本文实例讲述了JS读取XML文件数据并以table形式显示数据的方法。分享给大家供大家参考,具体如下:
先看xml文件:
张秋丽
女
18
李文才
男
31
李斯文
男
22
马英
女
25
孙红雷
男
32
欧阳俊雄
男
28
江琳
女
23
小小
女
22
aspx页面代码:
function loadXMLDoc(dname) {
if (window.XMLHttpRequest) {
xhttp = new XMLHttpRequest();
}
else {
xhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xhttp.open("GET", dname, false);
xhttp.send("");
return xhttp.responseXML;
}
function ReadXml() {
var xmldoc = loadXMLDoc("Student.xml");
//获得指定节点
var divmsg = document.getElementById("xmlMsg");
var msg = "
姓名 | 性别 | 年龄 |
---|
var nodes = xmldoc.getElementsByTagName("stuinfo");
for (var i = 0; i < nodes.length; i++) {
msg += "
";msg += "
" + nodes[i].getElementsByTagName("stuName")[0].firstChild.nodeValue + "";msg += "
" + nodes[i].getElementsByTagName("stuSex")[0].firstChild.nodeValue + "";msg += "
" + nodes[i].getElementsByTagName("stuAge")[0].firstChild.nodeValue + "";msg += "
";}
msg += "
";divmsg.innerHTML = msg;
}
上面的JS操作主要就避免了使用childNodes(因为火狐中有时候会出现childNodes[0]获取到的是"\n"而不是我们想要的第一个子节点,这个自己可以去试下,反正我是遇到了这种情况),使得可以兼容IE、火狐,其他浏览器我没试。
希望本文所述对大家JavaScript程序设计有所帮助。