使用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 相关文章推荐
JavaScipt中的Math.ceil() 、Math.floor() 、Math.round() 三个函数的理解
Apr 29 Javascript
jquery实现文字由下到上循环滚动的实例代码
Aug 09 Javascript
动态添加option及createElement使用示例
Jan 26 Javascript
node.js中的fs.fchmodSync方法使用说明
Dec 16 Javascript
使用jQuery不判断浏览器高度解决iframe自适应高度问题
Dec 16 Javascript
Javascript基础教程之数据类型 (布尔型 Boolean)
Jan 18 Javascript
javascript动态创建链接的方法
May 13 Javascript
jQuery导航条固定定位效果实例代码
May 26 jQuery
jq源码解析之绑在$,jQuery上面的方法(实例讲解)
Oct 13 jQuery
ES6之模版字符串的具体使用
May 17 Javascript
超简单的微信小程序轮播图
Nov 22 Javascript
Vue 的双向绑定原理与用法揭秘
May 06 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 数组遍历的差异(array_diff 的实现)
2008/03/23 PHP
PHP的引用详解
2015/02/22 PHP
Yii2框架中一些折磨人的坑
2019/12/15 PHP
javascript 传统事件模型构造的事件监听器实现代码
2010/05/31 Javascript
JS正则表达式获取分组内容的方法详解
2013/11/15 Javascript
用javascript替换URL中的参数值示例代码
2014/01/27 Javascript
jQuery中removeData()方法用法实例
2014/12/27 Javascript
js闭包实现按秒计数
2015/04/23 Javascript
微信小程序入门教程
2016/11/18 Javascript
bootstrap datetimepicker 日期插件在火狐下出现一条报错信息的原因分析及解决办法
2017/03/08 Javascript
详解webpack+vue-cli项目打包技巧
2017/06/17 Javascript
原生js FileReader对象实现图片上传本地预览效果
2020/03/27 Javascript
react-native ListView下拉刷新上拉加载实现代码
2017/08/03 Javascript
浅谈vue的踩坑路
2017/08/31 Javascript
vue项目优化之通过keep-alive数据缓存的方法
2017/12/11 Javascript
Angular resolve基础用法详解
2018/10/03 Javascript
微信小程序城市选择及搜索功能的方法
2019/03/22 Javascript
JS如何实现封装列表右滑动删除收藏按钮
2020/07/23 Javascript
js数组的基本使用总结
2021/01/18 Javascript
python控制台英汉汉英电子词典
2020/04/23 Python
实例解析Python设计模式编程之桥接模式的运用
2016/03/02 Python
疯狂上涨的Python 开发者应从2.x还是3.x着手?
2017/11/16 Python
python的re正则表达式实例代码
2018/01/24 Python
python实现Decorator模式实例代码
2018/02/09 Python
python 自动重连wifi windows的方法
2018/12/18 Python
Python类的继承、多态及获取对象信息操作详解
2019/02/28 Python
Python jieba库用法及实例解析
2019/11/04 Python
Python Excel vlookup函数实现过程解析
2020/06/22 Python
Python爬虫教程之利用正则表达式匹配网页内容
2020/12/08 Python
python 基于opencv实现高斯平滑
2020/12/18 Python
HTML5移动端开发中的Viewport标签及相关CSS用法解析
2016/04/15 HTML / CSS
大学生考试作弊被抓检讨书
2014/12/27 职场文书
爱岗敬业先进典型事迹材料(2016推荐版)
2016/02/26 职场文书
Ajax常用封装库——Axios的使用
2021/05/08 Javascript
Win11安全功能升级:内置防网络钓鱼功能
2022/04/08 数码科技
腾讯云服务器部署前后分离项目之前端部署
2022/06/28 Servers