我正在从 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 https://github.com/jquery/jquery/issues/1969- 上游固定。
如果您在服务器上托管 jquery,则这是一个相对较小的更改 - 请参阅github提交 https://github.com/jquery/sizzle/commit/50ebe1a43c0842f33ce363259f1a9eed236aca19
在 jquery.1.11.3.js 行 cca 1197 上(在QSA/matchesSelector
部分):
- "<select id='" + expando + "-\f]' msallowcapture=''>" +
+ "<select id='" + expando + "-\r\\' msallowcapture=''>" +
希望很快就会有新版本发布。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)