JavaScript-js解析xml
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;
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(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;
}
好像是我复制出错了,现在呢?
这样试试:
把下面代码
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;
}