我正在尝试将数据从xml文件访问到html文件中,我的JavaScript代码是:
var xmlDoc;
var abc = new Array();
if (window.XMLHttpRequest){
xmlDoc = new window.XMLHttpRequest();
xmlDoc.open("GET","wwww/../student.xml",false);
xmlDoc.send("");
xmlDoc = xmlDoc.responseXML;
}
var x = xmlDoc.getElementsByTagName("CD");
for (i = 0; i < x.length; i++){
abc[i] = x[i].getElementsByTagName("TITLE")[0].childNodes[0].nodeValue;
document.write("value of abc["+i+"] is "+abc[i]);
}
但它不适用于IE。它显示错误,即“访问被拒绝”。
有人可以告诉我为什么它在IE中不起作用?
编辑
整个代码是
var xmlDoc;
try
{
if (window.XMLHttpRequest)
{
xmlDoc=new window.XMLHttpRequest();
xmlDoc.open("GET","cd_catalog.xml",false);
xmlDoc.send("");xmlDoc=xmlDoc.responseXML;
}
else if (ActiveXObject("Microsoft.XMLDOM"))
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.load("cd_catalog.xml");
}
}catch(e)
{
document.write("error");
}
document.write("<table border='1'>");
var x=xmlDoc.getElementsByTagName("CD");
for (i=0;i<x.length;i++){
document.write("<tr><td>");
document.write(x[i].getElementsByTagName("ARTIST")[0].childNodes[0].nodeValue);
document.write("</td><td>");document.write(x[i].getElementsByTagName("TITLE")[0].childNodes[0].nodeValue);
document.write("</td></tr>");
}
document.write("</table>");
我从这里获得了这段代码http://www.scribd.com/doc/19290029/XML-Javascript-Tutorial
它的名称是加载XML字符串 - 跨浏览器示例
我无法在IE7中运行它..可以有人hrlp