jQuery 调用查找函数在 Firefox 中给出 “not well-formed” 错误

标签 jquery ajax xml firefox find

我正在从 XML 文件中检索数据,然后使用 jQuery .find() 函数访问该数据。但是在 Firefox(版本 37.0.2)中,我在 JavaScript 控制台中收到以下错误:

Error: Unable to run script because scripts are blocked internally.
Error: not well-formed
Source Code:
<datarecord><div><a id='sizzle1430853521804'></a><select id='sizzle1430853521804- ]' msallowcapture=''><option selected=''></option></select></

一切仍然正常,但有谁知道我怎样才能摆脱这个错误,或者它是 Firefox 中的错误吗?

这是我的代码:

$.ajax({
  url:"file.xml", 
  type:"GET", 
  dataType:"xml", 
  success:function(xml){
    $(xml).find("field_id").each(function(){
      // my code...
    }
  }
});

XML 文件的格式如下,我使用了 XML 验证器来确保它是正确的:

<?xml version="1.0" encoding="utf-8"?>
<datarecord>
<field_id><TheIdValue>8</TheIdValue><TheDisplayValue>Joe Bloggs</TheDisplayValue></field_id>
etc...
</datarecord>

我还没有找到解决办法。有什么建议吗?

最佳答案

我不能肯定地说它会解决您的问题,但我在 firefox 中遇到了类似的“格式不正确”消息的问题。事实证明 jQuery 1.11.2 和 1.11.3 中存在错误 - https://github.com/jquery/jquery/issues/1969 - 这是固定的上游。

如果您在服务器上托管 jquery,这是一个相对较小的变化 - 请参阅 github commit

在 jquery.1.11.3.js 行 cca 1197(在 QSA/matchesSelector 部分):

 -              "<select id='" + expando + "-\f]' msallowcapture=''>" +
 +              "<select id='" + expando + "-\r\\' msallowcapture=''>" +

希望很快会有一个新版本。

关于jQuery 调用查找函数在 Firefox 中给出 “not well-formed” 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30062247/

相关文章:

jquery - 使用 jQuery Address 进行 AJAX 深度链接

c# - 如何使用 XmlReader 读取列表中的数据第 2 部分

javascript - 在 angularjs 中实现缩短 url 功能

xml - 从另一个节点的属性值中指定的路径检索 XML 节点

javascript - 使voiceXML读取服务器返回的结果

javascript - 如何使用单选按钮切换 Google(和维基百科)搜索框建议?

java - ajax GET请求Spring的403禁止错误

javascript - 使用 jQuery 分配 CSS 变量

javascript - 如何使用任何其他关注者列表中的 JavaScript 动态单击 Instagram 上的关注按钮?

javascript - 如何使用ajax删除记录?