欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

使用JS读取XML文件的方法

程序员文章站 2022-05-12 14:54:56
...
由于项目上需要解析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