当前位置: 首页 > 面试题库 >

本地html文件AJAX调用和jQuery困境

习华灿
2023-03-14
问题内容

我正在使用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中进行这项工作的任何想法?

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


问题答案:

从OP发布的答案链接中:

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

 $.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"
   }
 });

这也为我工作。



 类似资料:
  • 问题内容: 我想知道是否可以在Web Worker文件中使用jQuery。谷歌浏览器给我这个错误:“未捕获的ReferenceError:未定义$”。 下面是代码:父文件: 工作文件: 请帮忙,谢谢:) 问题答案: 不,你 不能 。无法访问非线程安全组件或DOM,您必须通过序列化对象将特定数据传入和传出线程。因此,您必须非常努力地在代码中引起问题。 jQuery是一个JavaScript DOM库

  • 问题内容: 根据Same OriginPolicy,SOP不应应用于file://协议,但是为什么我的代码不起作用?我正在从本地系统运行此测试页面,并且与html页面位于同一目录中。如果我将URL更改为http://www.google.com/,它也无法正常工作。我不明白为什么,有人可以解释吗? 编辑: 控制台打印如下: XMLHttpRequest无法加载文件:/// C:/Users/yc/

  • 问题内容: 我已经在互联网上的一些博客文章中阅读了相关信息,并在自己的应用中实施了缓解CSRF攻击的措施。这些帖子尤其是我实施的驱动力 来自ASP.NET和Web工具开发人员内容团队的ASP.NET MVC最佳实践 Phil Haack博客的跨站点请求伪造攻击剖析 ASP.NET MVC框架中的AntiForgeryToken- David Hayden博客的Html.AntiForgeryTok

  • 给出以下发出ajax调用的jQuery代码: 我遇到的问题是,用户可以在URL上手动输入test.html并在屏幕上看到响应。如何避免这种情况?

  • 问题内容: 我有一个android webview加载我在本地拥有资产的网站。我不是自己构建的,对标记,js等的控制很少。 问题:网站的某些部分使用jquery $ .ajax- gets获取HTML以模态显示,并且我认为我遇到了跨域问题(如果我在台式机上本地测试该网站,则会得到相同的来源-警告,我的来源是“ null”),即由于某种原因,本地js无法ajax获取Assets文件夹中的其他本地文件

  • 问题内容: 我有一个default.aspx.cs,其中包含要调用的web方法,并且我的js文件包含我的jquery ajax。我无法打电话给网络方法。 这是我的default.aspx.cs: 这是我的js文件: 您可能会注意到,我正在提醒我的数据,以确保我有正确的值发送给我的web方法。但是就像我说的那样,它无法调用我的web方法,并且不在我的Ajax中继续执行我的成功功能。救命!谢谢!:)