简单的dojo.在IE中查询xml文档失败
Simple dojo.query over xml document fails in IE
我有一个非常简单的dojo.query
在一个xml文档是在FireFox和Chrome工作,但在IE失败。在IE中,这一行给出了错误'undefined' is null or not an object
。
var result = dojo.query("list > country", response);
dojo中的错误发生在eval代码中,在下面的函数中。行号为791
// get an array of child *elements*, skipping text and comment nodes
var _childElements = function(filterFunc){
filterFunc = filterFunc||yesman;
return function(root, ret, bag){
// get an array of child elements, skipping text and comment nodes
var te, x = 0, tret = root[childNodesName];
// THE ERROR HAPPENS HERE. tret is 'undefined'
while(te = tret[x++]){
if(
_simpleNodeTest(te) &&
(!bag || _isUnique(te, bag)) &&
(filterFunc(te, x))
){
ret.push(te);
}
}
return ret;
};
};
我已经确认(通过IE开发人员工具)响应是有效的,并且被设置为IXMLDOMDocument2
的实例,具有适当的子节点。dojo.xhrGet
方法提供的响应,其中我有handleAs: "xml"
。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<countries>
<list>
<country>
<code>1</code>
<name>UNITED STATES</name>
</country>
<country>
<code>2</code>
<name>UNITED KINGDOM</name>
</country>
<!-- Snip -->
</list>
</countries>
dojo.query
是第一次尝试访问result
变量。这是已知的问题吗?有解决办法吗?
我刚刚确认你遇到了一个dojo bug。你可以通过升级到1.7来修复它,或者你可以尝试应用那个补丁来改变
的出现次数。root[childNodesName]
root.children || root.childNodes
在dojo/selector/acme.js文件
相关文章:
- 内部分区字体大小获胜'调整浏览器窗口大小时不会随媒体查询而更改
- 我应该如何从xml文件构建一个javascript页面
- j查询utc offSets的时差
- 如何有效地将游戏数据存储在URL查询字符串中
- 如何处理node.js节点mongodb中的连接和查询队列
- 将XML转换为普通的旧JavaScript对象
- 如何从 HTML 查询中删除项目
- 从查询字符串参数推断出正确的数据类型
- 将curl查询转换为jQuery.ajax()
- jQuery AJAX write to XML
- 触发媒体查询断点时刷新页面
- XML查询日期范围查找
- 运行查询并从外部站点检索 XML
- 如何使用javascript在XML文件中查询数据
- 使用Javascript查询XML
- 使用javascript功能查询两个xml文件
- 简单的dojo.在IE中查询xml文档失败
- 如何在Javascript中使用WHERE等效命令查询XML
- Nodejs请求模块返回XML的Facebook图API FQL查询,我需要JSON
- 使用javascript或php查询XMl文件