寻找在IE 10中工作的代码和在本地硬盘上加载xml的Firefox

时间:2014-01-04 14:47:37

标签: javascript xml internet-explorer-10

这是我用于IE< 10,FF和Safari的代码。

var xmlDoc;
function importXML(xmlfile)
{
var element; 
var xmlloaded = false;

    try
    {
        var xmlhttp = new XMLHttpRequest();
        xmlhttp.open("GET", xmlfile, false);
    }
    catch (Exception)
    {
        var ie = (typeof window.ActiveXObject != 'undefined');

        if (ie)
        {
            xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
            xmlDoc.async = false;
            while(xmlDoc.readyState != 4) {};

IE10在以下代码行中给出错误:不支持加载

            xmlDoc.load(xmlfile);
            element = xmlDoc.documentElement;
            xmlloaded = true;
        }
        else
        {
            xmlDoc = document.implementation.createDocument("", "", null);
            xmlDoc.onload = element = xmlDoc.documentElement;
            xmlDoc.load(xmlfile);
            xmlloaded = true;
        }
    }

    if (!xmlloaded)
    {
        xmlhttp.setRequestHeader('Content-Type', 'text/xml')
        xmlhttp.send("");
        xmlDoc = xmlhttp.responseXML;
        element = xmlDoc.documentElement;
        xmlloaded = true;
    }
}

我也需要这个与IE 10一起工作。 我知道解决方案在这里http://blogs.msdn.com/b/ie/archive/2012/07/19/xmlhttprequest-responsexml-in-ie10-release-preview.aspx,因为在stackvoerflow的另一个问题中,用户说他在那里找到了解决方案,但他没有编写mod。 我没有自己写上面的代码,而且我是初学者,所以我不知道如何操作。

1 个答案:

答案 0 :(得分:0)

出于安全原因,Javascript无法访问本地文件系统。如果您可以访问所需文件和某种类型的服务器,请将该文件放在服务器上并使用URL从那里访问它。