JS加载&解析XML文件,浏览器兼容
# JS加载XML,浏览器之间有差异,代码如下
this.createXMLDom = function() {
var xmldoc;
var xmlFile = "XXXXXXXXX.xml";
if (window.ActiveXObject) {
xmldoc = new ActiveXObject("Microsoft.XMLDOM");
xmldoc.async = false;
//和FireFox一致,设为true;
xmldoc.preserveWhiteSpace = true;
xmldoc.load(xmlFile);
}
//firefox
else if (navigator.userAgent.indexOf("Firefox") > 0) {
xmldoc = document.implementation.createDocument("", "doc", null);
xmldoc.async = false;
xmldoc.load(xmlFile);
}
//chrome
else {
var xmlhttp = new window.XMLHttpRequest();
xmlhttp.open("GET", xmlFile, false);
xmlhttp.send(null);
if (xmlhttp.readyState === 4) {
xmldoc = xmlhttp.responseXML.documentElement;
}
}
return xmldoc;
}
# 解析XML
//加载XML文件
var xmlDom = _this.createXMLDom();
var elements = xmlDom.getElementsByTagName("data");
var data = "";
for (var i = 0; i < elements.length; i++) {
var name = elements[i].getElementsByTagName("name")[0].firstChild.nodeValue;
var path = elements[i].getElementsByTagName("path")[0].firstChild.nodeValue;
data += "mingcen:";
data += name;
data += " path:";
data += path;
data += " ";
}
alert(data);
# 示例XML文件
<?xml version="1.0" encoding="gb2312"?>
<root>
<data id="1">
<name>formal</name>
<path>XXXXXXXXXXXXX</path>
</data>
<data id="2">
<name>test</name>
<path>YYYYYYYYYYYYY</path>
</data>
</root>
JS加载&解析XML文件,浏览器兼容的更多相关文章
- jquery加载解析XML文件
xml文件 <?xml version="1.0" encoding="utf-8" ?> <taxrates> <taxrate ...
- Spring中加载ApplicationContext.xml文件的方式
Spring中加载ApplicationContext.xml文件的方式 原文:http://blog.csdn.net/snowjlz/article/details/8158560 1.利用Cla ...
- Silverlight实用窍门系列:2.Silverlight动态加载外部XML指定地址的WebService---(动态加载外部XML文件中指定的WebService地址)【附带实例源码】
接上节所讲的,Silverlight可以加载外部的XML文件里面的内容,那么我们可不可以在外部XML里面配置一个WebService地址,并且以此加载这个地址来动态加载WebService呢?这样子就 ...
- 如何让Chrome浏览器可以加载本地XML文件?
Chrome浏览器的安全限制,禁止本地加载XML等外部文件,如何设置让其可以加载呢? 有两种方法,第一种是在本地服务器环境下浏览,采用 http://localhost/ 的方式浏览你的网页和文件,就 ...
- maven在windows环境下加载settings.xml文件
今天发现maven在windows环境下加载的settings.xml文件是c:下的,就算修改conf下的settings.xml里的<localRepository>给他明确指向也没用.
- 关于单元测试时加载spring-context.xml文件的问题
在进行web开发的时候,通常我们都会使用Spring框架,使用spring容器管理java bean. 而spring的配置文件有时候放在classpath下面,有时候放在WEB-INF下面. 一般在 ...
- three.js 加载3DS 404 文件找不到
web.config修改如下: code: <?xml version="1.0" encoding="utf-8"?> <!-- 有关如何配 ...
- DOM4J方式解析XML文件
dom4j介绍 dom4j的项目地址:http://sourceforge.net/projects/dom4j/?source=directory dom4j是一个简单的开源库,用于处理XML. X ...
- DOM方式解析XML文件实例
books.XML文件: <?xml version="1.0" encoding="utf-8"?><bookstore> &l ...
随机推荐
- [Vue] Create Vue.js Layout and Navigation with Nuxt.js
Nuxt.js enables you to easily create layout and navigation by replacing the default App.vue template ...
- bash - Logical_OR
转载 https://bash.cyberciti.biz/guide/Logical_OR Logical OR ← Logical AND Home Logical Not ! → Logic ...
- Notepad++打开xml文件显示crlf的问题
如图所示,显示CRLF, CRLF其实是换行符. 所以在下图所示设置下显示行尾符不显示即可.
- string与QString之间的转换(两种方法:fromStdString直接转换,或者fromLocal8Bit(cstr.c_str())
string str;QString qstr; //从QString 到 std::stringstr = qstr.toStdString(); //从std::string 到QStringqs ...
- 搭建微信小程序开发环境
1.下载开发工具 点击进入下载地址选择和自己电脑匹配的安装包,并安装: image.png 安装完成后出现应用icon: image.png 2.创建项目 能够扫码登录的前提是微信号已经注册了小程序, ...
- 定义变量let,const
1.块级作用域let 声明变量,作用域是最近的"{}": 'use strict'; { let test = '1'; } console.log(test);//test is ...
- arm-linux内存管理学习笔记(1)-内存页表的硬件原理
linux kernel集中了世界顶尖程序猿们的编程智慧,犹记操作系统课上老师讲操作系统的四大功能:进程调度 内存管理 设备驱动 网络.从事嵌入式软件开发工作,对设备驱动和网络接触的比較多. 而进程调 ...
- Jquery前端分页插件pagination同步加载和异步加载
上一篇文章介绍了Jquery前端分页插件pagination的基本使用方法和使用案例,大致原理就是一次性加载所有的数据再分页.https://www.jianshu.com/p/a1b8b1db025 ...
- TensorFlow 学习(十四)—— contrib
1. tensorflow.contrib.layers tf.contrib.layers.xavier_initializer():一种经典的权值矩阵的初始化方式:
- iOS 一个简单的单例
比如我有一个Singleton的类(DemoStatusManage),他有一个实例方法currentStatus会返回一个1-100的随机数. @interface DemoStatusManage ...