使用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 相关文章推荐
在网页中控制wmplayer播放器
Jul 01 Javascript
禁止你的左键复制实用技巧
Jan 04 Javascript
jQuery中ajax的使用与缓存问题的解决方法
Dec 19 Javascript
Area 区域实现post提交数据的js写法
Apr 22 Javascript
jquery如何判断表格同一列不同行input数据是否重复
May 14 Javascript
JavaScript中的类(Class)详细介绍
Dec 30 Javascript
在linux中使用包管理器安装node.js
Mar 13 Javascript
JavaScript判断IE版本型号
Jul 27 Javascript
js添加绑定事件的方法
May 15 Javascript
vue component组件使用方法详解
Jul 14 Javascript
Angularjs之ngModel中的值验证绑定方法
Sep 13 Javascript
JS操作字符串转数字的常见方法示例
Oct 29 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三元运算的2种写法代码实例
2014/05/12 PHP
详解PHP对数组的定义以及数组的创建方法
2015/11/27 PHP
支付宝服务窗API接口开发php版本
2016/07/20 PHP
YII2框架中actions的作用与使用方法示例
2020/03/13 PHP
Thinkphp 框架基础之入口文件功能、定义与用法分析
2020/04/27 PHP
用YUI做了个标签浏览效果
2007/02/20 Javascript
js利用事件的阻止冒泡实现点击空白模态框的隐藏
2014/01/24 Javascript
js中的getAttribute方法使用示例
2014/08/01 Javascript
JQuery中节点遍历方法实例
2015/05/18 Javascript
jquery+CSS实现的水平布局多级网页菜单效果
2015/08/24 Javascript
Sort()函数的多种用法
2016/03/20 Javascript
BootStrap学习系列之Bootstrap Typeahead 组件实现百度下拉效果(续)
2016/07/07 Javascript
JS实现仿PS的调色板效果完整实例
2016/12/21 Javascript
学习使用jQuery表单验证插件和日历插件
2017/02/13 Javascript
分享一个精简的vue.js 图片lazyload插件实例
2017/03/13 Javascript
Vue2.0基于vue-cli+webpack Vuex的用法(实例讲解)
2017/09/15 Javascript
浅析vue-router jquery和params传参(接收参数)$router $route的区别
2018/08/03 jQuery
详解Vue SSR( Vue2 + Koa2 + Webpack4)配置指南
2018/11/13 Javascript
Vue3.0中的monorepo管理模式的实现
2019/10/14 Javascript
小程序api实现promise封装过程解析
2019/11/21 Javascript
讲解Python中for循环下的索引变量的作用域
2015/04/15 Python
Python实现把回车符\r\n转换成\n
2015/04/23 Python
详解Python中的strftime()方法的使用
2015/05/22 Python
Python两个内置函数 locals 和globals(学习笔记)
2016/08/28 Python
浅谈Python处理PDF的方法
2017/11/10 Python
用Python和WordCloud绘制词云的实现方法(内附让字体清晰的秘笈)
2019/01/08 Python
Python2.7版os.path.isdir中文路径返回false的解决方法
2019/06/21 Python
Python中内建模块collections如何使用
2020/05/27 Python
浅谈HTML5 defer和async的区别
2016/06/07 HTML / CSS
2014年十一国庆节活动方案
2014/09/16 职场文书
房屋租赁授权委托书范本
2014/09/20 职场文书
应届生求职自荐信范文
2015/03/04 职场文书
小学大队长竞选稿
2015/11/20 职场文书
CSS3实现的3D隧道效果
2021/04/27 HTML / CSS
MySql数据库触发器使用教程
2022/06/01 MySQL
python数字图像处理:图像的绘制
2022/06/28 Python