使用JS读取XML文件的方法


Posted in Javascript onNovember 25, 2016

由于项目上需要解析xml,于是各种百度,然后自己总结了下各个主流浏览器解析xml的方法,只能是很浅显的知道他的用法,但是还没有深层次的研究。

不同的浏览器对xml的解析方式不同,根据目前主流浏览器大致分三类:

第一类,ie祖宗: js 提供用于创建 Automation对象的方法,new ActiveXObject("Microsoft.XMLDOM") ;

第二类:firefox,opera:用构造函数 DOMParser()实例化DOMParser对象,解析xml文本,并返回xml Document对象;

第三类:chrome,safari:由于chrome不支持load方法,故用http协议,XMLHttpRequest对象。

代码:

function loadXML(){
var xmlDoc;
try{ //IE
xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
}catch(e){ //firefox,opera
xmlDoc = document.implementation.createDocument("","",null);
}
try{
xmlDoc.asyc = false; //是否异步调用
xmlDoc.load("xxx.xml"); //文件路径
}catch(e){ //chrome
var xmlhttp = new window.XMLHttpRequest();
xmlhttp.open("GET","xxx.xml",false); //创建一个新的http请求,并指定此请求的方法、URL以及验证信息
xmlDoc = xmlhttp.responseXML;
}
return xmlDoc;
}

返回的xmlDoc对象,其中属性documentElement包含了xml节点的各种值,可以console出来慢慢找。

ps:如果是读取本地xml,chrome默认是禁止访问本地文件,需要增加启动参数 --allow-file-access-from-files。

以上所述是小编给大家介绍的使用JS读取XML文件的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
判断控件是否已加载完成的代码
Feb 24 Javascript
JS 跳转页面延迟2种方法
Mar 29 Javascript
自己使用js/jquery写的一个定制对话框控件
May 02 Javascript
jQuery的观察者模式详解
Dec 22 Javascript
javascript获取本机操作系统类型的方法
Aug 13 Javascript
JavaScript时间操作之年月日星期级联操作
Jan 15 Javascript
javascript绘制漂亮的心型线效果完整实例
Feb 02 Javascript
bootstrap下拉列表与输入框组结合的样式调整
Oct 08 Javascript
js实现可旋转的立方体模型
Oct 16 Javascript
el表达式 写入bootstrap表格数据页面的实例代码
Jan 11 Javascript
Element-ui tree组件自定义节点使用方法代码详解
Sep 17 Javascript
vue 中Virtual Dom被创建的方法
Apr 15 Javascript
JS比较两个数值的大小实例
Nov 25 #Javascript
使用JavaScript解决网页图片拉伸问题(推荐)
Nov 25 #Javascript
js移动焦点到最后位置的简单方法
Nov 25 #Javascript
详解JS几种变量交换方式以及性能分析对比
Nov 25 #Javascript
深入浅析Vue组件开发
Nov 25 #Javascript
javascript中href和replace的比较(详解)
Nov 25 #Javascript
移动适配的几种方案(三种方案)
Nov 25 #Javascript
You might like
PHP 常见郁闷问题答解
2006/11/25 PHP
深入PHP empty(),isset(),is_null()的实例测试详解
2013/06/06 PHP
解析php中static,const与define的使用区别
2013/06/18 PHP
phalcon model在插入或更新时会自动验证非空字段的解决办法
2016/12/29 PHP
PDO::getAvailableDrivers讲解
2019/01/28 PHP
关于flash遮盖div浮动层的解决方法
2010/07/17 Javascript
JavaScript中的继承方式详解
2015/02/11 Javascript
JQuery插件Quicksand实现超炫的动画洗牌效果
2015/05/03 Javascript
一张Web前端的思维导图分享
2015/07/03 Javascript
node模块机制与异步处理详解
2016/03/13 Javascript
AngularJS入门教程之Select(选择框)详解
2016/07/27 Javascript
Node.js 回调函数实例详解
2017/07/06 Javascript
Node.js命令行/批处理中如何更改Linux用户密码浅析
2018/07/22 Javascript
JS如何获取地址栏的参数实例讲解
2018/10/06 Javascript
JavaScript使用Math.random()生成简单的验证码
2019/01/21 Javascript
教你安装python Django(图文)
2013/11/04 Python
python实现上传样本到virustotal并查询扫描信息的方法
2014/10/05 Python
Python实现基于KNN算法的笔迹识别功能详解
2018/07/09 Python
解决Pycharm出现的部分快捷键无效问题
2018/10/22 Python
对python的bytes类型数据split分割切片方法
2018/12/04 Python
详解python函数的闭包问题(内部函数与外部函数详述)
2019/05/17 Python
python编写简单端口扫描器
2019/09/04 Python
python 实现"神经衰弱"翻牌游戏
2020/11/09 Python
Vans(范斯)德国官网:美国南加州的原创极限运动潮牌
2017/05/02 全球购物
美国在线旅行社:Crystal Travel
2018/09/11 全球购物
如何安装ruby on rails
2014/02/09 面试题
工艺工程师工作职责
2013/11/23 职场文书
保密工作实施方案
2014/02/24 职场文书
荷叶母亲教学反思
2014/04/30 职场文书
广告学专业求职信
2014/06/19 职场文书
预防艾滋病宣传标语
2014/06/25 职场文书
毕业横幅标语
2014/10/08 职场文书
2014年招生工作总结
2014/11/26 职场文书
导游词之日月潭
2019/11/05 职场文书
详细了解java监听器和过滤器
2021/07/09 Java/Android
PostGIS的安装与入门使用指南
2022/01/18 PostgreSQL