我正在尝试将 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
它的名称为Load an XML String - A Cross browser Example
我无法在 IE7 中运行它.. 有人可以 hrlp