JavaScript-js解析xml

JavaScript-js解析xml

甜柠檬 发布于 2016-12-31 字数 950 浏览 1083 回复 2
function loadxml(tag,index){
var str = "";
var uRl = "MapInfo.xml";
var xmlDoc;
if(window.ActiveXObject){ //IE浏览器
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false"
xmlDoc.load(uRl);
str = xmlDoc.getElementsByTagName(tag)[index].childNodes[0].nodeValue;
}
else if(document.implementation && document.implementation.createDocument){ //FireFox浏览器
xmlDoc=document.implementation.createDocument("", "root", null);
xmlDoc.load(uRl);
xmlDoc.onload=function(){
str = xmlDoc.getElementsByTagName(tag)[index].childNodes[0].nodeValue;
};
}else{
alert("你的浏览器不支持javascript");
}

return str;
}

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

夜无邪 2017-08-25 2 楼

function loadxml(tag,index){
var str = "";
var uRl = "MapInfo.xml";
var xmlDoc;
if(window.ActiveXObject){ //IE浏览器
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false"
xmlDoc.load(uRl);
str = xmlDoc.getElementsByTagName(tag)[index].childNodes[0].nodeValue;
}
else if(document.implementation && document.implementation.createDocument){ //FireFox浏览器
xmlDoc=document.implementation.createDocument("", "root", null);
//同样需要取消异步请求
xmlDoc.async=false;
xmlDoc.load(uRl);
str = xmlDoc.getElementsByTagName(tag)[index].childNodes[0].nodeValue;
}else{
alert("你的浏览器不支持javascript");
}

return str;
}

好像是我复制出错了,现在呢?

清晨说ぺ晚安 2017-01-10 1 楼

这样试试:
把下面代码

else if(document.implementation && document.implementation.createDocument){ //FireFox浏览器
xmlDoc=document.implementation.createDocument("", "root", null);
xmlDoc.load(uRl);
xmlDoc.onload=function(){
str = xmlDoc.getElementsByTagName(tag)[index].childNodes[0].nodeValue;
};
}

换成:

  else if(document.implementation && document.implementation.createDocument){ //FireFox浏览器
var parser = new DOMParser();
xmlDoc = parser.parseFromString("MapInfo.xml", "text/xml");
str = xmlDoc.getElementsByTagName(tag)[index].childNodes[0].nodeValue;
}