function loadXmlData(xmlfile) {
// 利用google maps api中提供的方法加载xml
var request = GXmlHttp.create();
request.open("GET", xmlfile, true);
/*
// 普通方法加载xml
var request;
if (window.ActiveXObject) {
// 只能是ie加载了,其他的搞不定
request = new ActiveXObject("Microsoft.XMLDOM");
alert("ie");
request.async=true; // 异步加载
request.load(xmlfile);
}
else if (document.implementation && document.implementation.createDocument) {
alert("Firefox, Mozilla, Opera, etc.");
//request = document.implementation.createDocument("", "", null);
//request.async=true; // 异步加载
//request.load(xmlfile);
// Firefox 应该也不行,报错了
// request.addEventListener("load",initializeData,false);
// request.load(xmlfile,"text/xml");
//Google Chrome 是可以加载上,但是又报错没有getElementsByTagName方法
//request = new window.XMLHttpRequest();
//request.open("GET",xmlfile,true);
//request.send(null);
} else {
alert('Your browser cannot handle this script');
return;
}
*/
request.onreadystatechange = function() {
if(request.readyState == 4) {
// 获得加载后的mxl对象
var xmlDoc = request.responseXML;
var polylines = xmlDoc.documentElement.getElementsByTagName("polyline");
for(var i=0; i<polylines.length; i++) {
addPolyline(polylines[i]);
}
var polygons = xmlDoc.documentElement.getElementsByTagName("polygon");
for(var i=0; i<polygons.length; i++) {
addPolygon(polygons[i]);
}
}
}
request.send(null);
}
xml:
<?xml version="1.0" encoding="gb2312" ?>
<overlays>
<polyline color="#FF0000" width="8" alpha="0.5">
<point lat="43.6" lng="110" />
<point lat="35.8" lng="119" />
<point lat="37.9" lng="102" />
</polyline>
<polyline color="#FF0000" width="6" alpha="0.5">
<point lat="42" lng="120" />
<point lat="45.8" lng="125" />
<point lat="37.9" lng="126" />
<point lat="47.9" lng="130" />
</polyline>
<polygon color="#008800" width="4" alpha="0.8" fillcolor="#FF00FF" fillalphs="0">
<point lat="39" lng="105" />
<point lat="43" lng="118" />
<point lat="35" lng="125" />
<point lat="31" lng="116" />
<point lat="36" lng="106" />
<point lat="39" lng="105" />
</polygon>
<polygon color="#008800" width="4" alpha="0.8" fillcolor="#FF00FF" fillalphs="0.5">
<point lat="27" lng="100" />
<point lat="30" lng="100" />
<point lat="30" lng="105" />
<point lat="27" lng="105" />
<point lat="27" lng="100" />
</polygon>
</overlays>
分享到:
相关推荐
本篇文章将深入探讨如何使用JavaScript加载XML文件和XML字符串,主要涉及DOM和XMLHttpRequest两种方法。 **1. DOM(Document Object Model)方式加载XML** DOM是一种标准,它允许程序和脚本动态更新、添加、删除和...
以下是关于JavaScript加载和操作XML文档的关键知识点: 1. **XML解析器**: - 所有现代浏览器(如IE、Firefox、Chrome、Safari等)都内置了XML解析器,用于将XML文档转换为可被JavaScript访问的DOM(Document ...
首先,我们需要了解如何使用JS来加载XML文件。这通常通过XMLHttpRequest对象或现代浏览器提供的fetch API实现。下面以XMLHttpRequest为例: 1. 创建XMLHttpRequest实例: ```javascript var xhr = new ...
使用 JavaScript 我们可以加载和保存 XML 文件,包括从文件中加载 XML 文件和将 XML 文件保存到文件中。 浏览器兼容性 在使用 JavaScript 解析 XML 文件时,需要考虑浏览器兼容性问题。不同的浏览器有不同的实现...
在JavaScript中,我们通常使用`DOMDocument`对象来创建或加载XML文档。首先,我们需要通过`new ActiveXObject`或`new DOMParser`方法创建一个`DOMDocument`实例。在Internet Explorer中,推荐使用`Msxml2.DOM...
在这个案例中,我们将探讨如何使用JavaScript加载XML文档。 首先,要创建一个DOM对象来解析XML文档。在IE浏览器中,我们可以使用ActiveXObject来创建这个对象,例如: ```javascript xmlDoc = new ActiveXObject(...
以下是如何使用XMLDocument加载XML文件: ```actionscript var xmlRequest:URLRequest = new URLRequest("path_to_your_xml_file.xml"); var xmlLoader:URLLoader = new URLLoader(); xmlLoader.addEventListener...
### JS读取XML文件并获取文件内容 #### 知识点概述 在现代Web开发中,JavaScript(简称JS)常被用于处理各种数据格式,包括XML。XML(可扩展标记语言)是一种常用的标记语言,主要用于结构化数据的存储与传输。...
- **使用AJAX**:XMLHttpRequest对象是JavaScript中用于异步请求数据的主要工具,包括加载XML文件。通过创建XMLHttpRequest实例,设置HTTP请求,然后监听`onreadystatechange`事件,当状态变为4(表示请求已完成)...
### JavaScript 实现加载 XML 文件的方法 #### 概述 在 Web 开发中,XML(可扩展标记语言)常被用于存储和传输数据。利用 JavaScript 可以方便地处理 XML 数据,例如从服务器加载 XML 文件,并从中提取所需的信息...
以下是一个基本的示例,展示了如何使用JavaScript加载XML文件并进行解析: ```javascript var xhr = new XMLHttpRequest(); xhr.open('GET', 'server_side_menu.xml', true); xhr.onreadystatechange = function() ...
#### 一、JavaScript加载XML文件 为了在JavaScript中加载XML文件,我们需要创建一个XML DOM对象。根据浏览器的不同,创建DOM对象的方法也有所不同: 1. **IE浏览器**: - 使用`ActiveXObject`创建XML DOM对象。 ...
AJAX(Asynchronous JavaScript and XML)技术通常使用`XMLHttpRequest`对象来异步加载XML文件。通过`open()`方法设置请求类型、URL和异步模式,然后用`send()`方法发送请求。当请求完成,`onreadystatechange`事件...
需要注意的是,由于同源策略的限制,JavaScript只能直接从同一源加载XML文件。如果XML文件位于其他域,可能需要服务器端的帮助,如使用CORS(跨源资源共享)配置允许跨域访问。此外,考虑到兼容性问题,通常会在项目...
2. **调用外部JavaScript文件加载XML文档** 当需要在多个页面间共享加载和处理XML的逻辑时,我们可以把相关代码封装到外部JavaScript文件中。首先创建一个外部JS文件,例如`loadXML.js`,然后在HTML中通过`...
通过`new DOMParser()`解析XML字符串,或`XMLHttpRequest`加载XML文件。例如: ```javascript var parser = new DOMParser(); var xml = parser.parseFromString("<root><element>data</element></root>", "text/...
- **加载XML文件**: ```javascript var strFilePath = "file.xml"; xmlDoc.load(strFilePath); // 加载XML文件 ``` - **加载XML字符串**: ```javascript var strXml = "<?xml version='1.0'?><root><node text='...
在JavaScript中,我们可以使用`XMLHttpRequest`对象或者`fetch` API来加载XML文件。例如: ```javascript const xhr = new XMLHttpRequest(); xhr.open('GET', 'example.xml'); xhr.onload = function() { if ...
`XMLHttpRequest`则可以异步加载XML文件,实现与服务器的通信。 3. **DOM(Document Object Model)**:DOM是XML和HTML文档的抽象表示,它将文档视为节点树。JavaScript可以通过DOM API来操作这些节点,例如添加、...
2. **DOM(文档对象模型)**:加载XML文件后,JavaScript会将其转换为一个DOM树。这个树形结构表示了XML文档的结构,每个节点代表XML中的一个部分。我们可以通过DOM API来遍历和操作XML数据。例如,获取根元素: ``...