js里各浏览器解析XML,支持IE、火狐、Chrome等
js在chrome中加载XML,js加载XML支持ff,IE6+,Opera等浏览器
见代码:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>js里各浏览器解析XML,支持IE、火狐、Chrome等</title>
</head>
<body>
<script>
function loadxmlDoc(file){
try{
//IE
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
}catch(e){
////Firefox, Mozilla, Opera, etc
xmlDoc=document.implementation.createDocument("","",null);
}
try{
xmlDoc.async=false;
xmlDoc.load(file);//chrome没有load方法
}catch(e){
//针对Chrome,不过只能通过http访问,通过file协议访问会报错
var xmlhttp = new window.XMLHttpRequest();
xmlhttp.open("GET",file,false);
xmlhttp.send(null);
xmlDoc = xmlhttp.responseXML.documentElement;
}
return xmlDoc;
}
var ob=loadxmlDoc("stu.xml");
var stu=ob.getElementsByTagName("stu");
for(var i=0;i<stu.length;i++){
var data=stu[i].childNodes;
for(var j=0;j<data.length;j++){
if(data[j].nodeType==1){
if(document.all)
document.write(data[j].text+" ");//IE
else
document.write(data[j].textContent+" ");
}
}
document.write("<br/>");
}
</script>
</body>
</html>

附stu.xml
<?xml version="1.0" encoding="UTF-8"?>
<stulist>
<stu>
<name>张三</name>
<age>20</age>
<sex>男</sex>
<classid>lamp87</classid>
</stu>
<stu>
<name>李四</name>
<age>22</age>
<sex>女</sex>
<classid>lamp86</classid>
</stu>
<stu>
<name>王五</name>
<age>21</age>
<sex>女</sex>
<classid>lamp87</classid>
</stu>
<stu>
<name>王五</name>
<age>21</age>
<sex>女</sex>
<classid>lamp87</classid>
</stu>
<stu>
<name>赵六</name>
<age>24</age>
<sex>男</sex>
<classid>lamp88</classid>
</stu>
</stulist>
觉得不错,推荐一下哦!
js里各浏览器解析XML,支持IE、火狐、Chrome等的更多相关文章
- 用js(JavaScript-jQuery)解析XML文件 无法成功 获得XML对象,字符串一些心得
原文作者:aircraft 原文地址:https://www.cnblogs.com/DOMLX/p/7822962.html 解析XML文件遇到的问题 今天秦博士叫我解析一下XML文件,将里面的所有 ...
- [完美]原生JS获取浏览器版本判断--支持Edge,IE,Chrome,Firefox,Opera,Safari,以及各种使用Chrome和IE混合内核的浏览器
截至自2017-08-11,支持现世已出的几乎所有PC端浏览器版本判断. 受支持的PC端浏览器列表: Edge IE Chrome Firefox Opera Safari QQ浏览器 360系列浏览 ...
- 用js解析XML文件,字符串一些心得
解析XML文件遇到的问题 今天秦博士叫我解析一下XML文件,将里面的所有的X坐标Y坐标放在一个数组里面然后写在文档里让他进行算法比对,大家都知道了啦,解析XML文件获取里面的坐标数据什么的,当然是用前 ...
- cocos2d-x 3.0 使用Sax解析xml文件(中国显示器问题解决)
今天是个好日子.我以为事情可以变得,明天是个好日子.打开门儿春风... 恩,听着歌写文档生活就是这么享受. 今天曾经的邻居大神突然在qq上赞了我一下,这让我异常激动啊.. 这还要从前前前几天说起,那会 ...
- js 解析XML 在Edge浏览器下面 无法准确读到节点属性值
js 解析XML 在Edge浏览器下面 无法准确读到节点属性值 Dom.documentElement.childNodes[j].attributes[2] 这个是大众写法 在win10的edge ...
- js解析xml浏览器兼容性处理
/****************************************************************************** 说明:xml解析类 ********** ...
- JS加载&解析XML文件,浏览器兼容
# JS加载XML,浏览器之间有差异,代码如下 this.createXMLDom = function() { var xmldoc; var xmlFile = "XXXXXXXXX. ...
- JS解析XML文件和XML字符串
JS解析XML文件 <script type='text/javascript'> loadXML = function(xmlFile){ var xmlDoc=null; //判断浏览 ...
- CSS控制XML与通过js解析xml然后通过html显示xml中的数据
使用CSS控制XML的显示 book.css bookname{ display:block;color:Red} author{ display:block;font-style:italic} p ...
随机推荐
- switch(面试)
public static void Output() { ; ) { i--; switch (i) { : Console.WriteLine(i.ToString()); break; : Co ...
- iOS获取设备型号、装置类型等信息
iOS获取设备型号.设备类型等信息 设备标识 关于设备标识,历史上盛行过很多英雄,比如UDID.Mac地址.OpenUDID等,然而他们都陆陆续续倒在了苹果的门下.苹果目前提供了2个方法供App获取设 ...
- 在spark中操作mysql数据 ---- spark学习之七
使用spark的 DataFrame 来操作mysql数据. DataFrame是比RDD更高一个级别的抽象,可以应用SQL语句进行操作,详细参考: https://spark.apache.org/ ...
- mysql root 密码丢失问题
root密码丢失,我们需要将mysql以不检查权限的方式重新启动. 在mysql的配置文件(/etc/my.cnf)中,[mysqld]下添加一句skip-grant-tables,然后重新启动服务, ...
- python学习笔记-socket
socket socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求. sock ...
- 【随笔】mOnOwall添加端口映射
mOnOwall是一个完整的嵌入防火墙软件包,当与一台嵌入个人电脑一起使用时,在免费使用自由软件的基础上,提供具备商业防火墙所有重要特性(包括易用). 这里通过配置mOnOwall的端口设置映射功能, ...
- Leveldb之version与version_set详细对比
version类包含的重要变量: VersionSet* vset_; // VersionSet to which this Version belongs Version* next_; // N ...
- KMP算法(快速模式匹配)
详细理解看这里:http://kb.cnblogs.com/page/176818/ 或者这里:http://blog.csdn.net/yutianzuijin/article/details/11 ...
- hdu 4107
Gangster Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Su ...
- Java 第六章 循环结构2
循环结构 2 会使用 for 循环结构 会在程序中使用 break 和 continue for 比 while 更简洁 什么是 for 循环 ... 语法: for 循环的语法和执行顺序 备注:2条 ...