使用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 相关文章推荐
让div层随鼠标移动的实现代码 ie ff
Dec 18 Javascript
jQuery操作Table技巧大汇总
Jan 23 Javascript
jQuery zTree加载树形菜单功能
Feb 25 Javascript
AngularJS打开页面隐藏显示表达式用法示例
Dec 25 Javascript
angular+ionic 的app上拉加载更新数据实现方法
Jan 16 Javascript
Vue.js实现实例搜索应用功能详细代码
Aug 24 Javascript
基于vue-video-player自定义播放器的方法
Mar 21 Javascript
Angular4 Select选择改变事件的方法
Oct 09 Javascript
js拖动滑块和点击水波纹效果实例代码
Oct 16 Javascript
微信小程序中遇到的iOS兼容性问题小结
Nov 14 Javascript
Node.js在图片模板上生成二维码图片并附带底部文字说明实现详解
Aug 07 Javascript
vue-router的钩子函数用法实例分析
Oct 26 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+Html+缓存
2006/12/20 PHP
PHP遍历数组的几种方法
2012/03/22 PHP
php遍历所有文件及文件夹的方法深入解析
2013/06/08 PHP
php自定义hash函数实例
2015/05/05 PHP
PHP中你应该知道的require()文件包含的正确用法
2015/06/12 PHP
浅谈PHP进程管理
2019/03/08 PHP
Laravel修改验证提示信息为中文的示例
2019/10/23 PHP
YUI 读码日记之 YAHOO.lang.is*
2008/03/22 Javascript
jquery ajax例子返回值详解
2012/09/11 Javascript
jQuery :first选择器使用介绍
2013/08/09 Javascript
14款NodeJS Web框架推荐
2014/07/11 NodeJs
Node.js+ES6+dropload.js实现移动端下拉加载实例
2017/06/01 Javascript
Vue.js实现按钮的动态绑定效果及实现代码
2017/08/21 Javascript
Vue项目中添加锁屏功能实现思路
2018/06/29 Javascript
JavaScript 作用域scope简单汇总
2019/10/23 Javascript
js+canvas实现画板功能
2020/09/13 Javascript
Python ORM框架SQLAlchemy学习笔记之映射类使用实例和Session会话介绍
2014/06/10 Python
Python3.2模拟实现webqq登录
2016/02/15 Python
Python实现excel转sqlite的方法
2017/07/17 Python
python实现数据预处理之填充缺失值的示例
2017/12/22 Python
python3+PyQt5实现自定义分数滑块部件
2018/04/24 Python
mac 安装python网络请求包requests方法
2018/06/13 Python
TensorFlow Session使用的两种方法小结
2018/07/30 Python
解决Django no such table: django_session的问题
2020/04/07 Python
纯CSS3制作的鼠标悬停时边框旋转
2017/01/03 HTML / CSS
欧洲领先的技术商店:eibmarkt.com
2019/05/10 全球购物
Optimalprint加拿大:在线打印服务
2020/04/03 全球购物
团员学习总结的自我评价范文
2013/10/14 职场文书
管道维修工岗位职责
2013/12/27 职场文书
家长给孩子的表扬信
2014/01/17 职场文书
工作决心书范文
2014/03/11 职场文书
感情真挚的毕业生求职信
2014/07/19 职场文书
整顿机关作风心得体会
2014/09/10 职场文书
学习退步检讨书
2014/09/28 职场文书
2015年酒店服务员工作总结
2015/05/18 职场文书
紧急迫降观后感
2015/06/15 职场文书