我正在尝试从本地计算机上的XML文件中获取信息。这是一个成功的Firefox,但由于某种原因它不能与IE8一起工作,它必须在IE7 +上运行。
在我将此行添加到我的.js文件之前,IE不报告错误:
xmlhttp.open("GET","food.xml",false);
我使用W3schools作为参考来构建我的脚本,我主要使用他们在这里做的所有事情:http://www.w3schools.com/ajax/tryit.asp?filename=tryajax_database
这整个块可以在Firefox上运行,但不适用于IE,如果可以提供任何帮助
xmlhttp=new XMLHttpRequest();
xmlhttp.open("GET","food.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
我很抱歉,我知道这一定已经得到了解答,但我没有适当的词汇来查找这个具体问题。
答案 0 :(得分:0)
原生XMLHttpRequest支持直到IE8才进入IE。要在IE7中使用XHR,您必须使用ActiveX对象
这是一个很好的帮手功能:
function getXMLHttpRequest()
{
if (window.XMLHttpRequest) {
return new window.XMLHttpRequest;
}
else {
try {
return new ActiveXObject("MSXML2.XMLHTTP.3.0");
}
catch(ex) {
return null;
}
}
您收到错误的原因是因为Internet Explorer的本机XMLHTTPRequest对象仅允许对HTTP和HTTPS的请求;对FILE,FTP或其他URI方案的请求被阻止。
要在IE中阅读有关XMLHttpRequests的其他信息,请查看MSDN页面:http://msdn.microsoft.com/en-us/library/ie/ms535874(v=vs.85).aspx