本地html文件AJAX调用和jQuery Woes

时间:2009-01-12 19:28:24

标签: jquery xml ajax internet-explorer offline

我正在使用jQuery和一些xml文件处理网站的离线版本。当我在xml文件上执行$ .ajax调用时,我在jQuery中遇到问题jQuery会抛出错误。

当我查看错误时,我可以告诉它加载XML文件,因为它在错误的responceText属性中。它可以在Firefox中正常工作。

这就是我的通话方式

$.ajax({
    type: "GET",
    url: "Modules/" + ModuleID + "/ModuleContent.xml",
    dataType: "xml",
    success: function(x) { xml = x; ProcessXML(); },
    error: function(x) { alert(x.responceText); }
});

当我在Web服务器上运行它时,它运行正常。只有当我遇到这个问题时才从文件中运行它。

关于如何在IE中使用它的任何想法?

编辑:我找到了问题的答案。 Here

2 个答案:

答案 0 :(得分:8)

来自OP发布的link答案:

  

在本地加载XML文件时,例如一个   CD-ROM等,收到的数据   Internet Explorer是纯文本,而不是   文/ XML。在这种情况下,使用   dataType参数加载xml   将文件作为文本,并解析返回的文件   成功函数中的数据

 $.ajax({
   url: "data.xml",
   dataType: ($.browser.msie) ? "text" : "xml",
   success: function(data){
     var xml;
     if (typeof data == "string") {
       xml = new ActiveXObject("Microsoft.XMLDOM");
       xml.async = false;
       xml.loadXML(data);
     } else {
       xml = data;
     }
     // Returned data available in object "xml"
   }
 }); 

这也适合我。

答案 1 :(得分:0)

只是一个想法:我记得一些GET请求与IE失败。你试过POST吗?