javascript - Internet Explorer 8 中 jQuery 的 .find().length 问题

标签 javascript jquery xml internet-explorer-8

我用谷歌搜索了一下,但找不到解决这个问题的好方法。 IE 的开发工具在这方面也没有多大帮助。

通过 ajax 返回的 xml 文档的代码适用于 Safari、Chrome 和 Firefox:

$(data).find('Ticket').length;

例如,代码返回数字 3。

相同的代码在 Internet Explorer 8 中返回 0。为什么?

我毫不怀疑有一个简单的解释,其中涉及 a) IE 怪癖或 b) 我的代码中其他浏览器可以原谅的错误。

最佳答案

find 不能在带有自定义标记 (xml) 的 IE 中工作,除非您构造一个 activeX 对象

假设变量“xml”是从您的请求返回的 xml

    var data;

    if ($.browser.msie) 
    {
       data = new ActiveXObject("Microsoft.XMLDOM");
       data.async = false;
       data.loadXML(xml);
    } 
    else 
    {
       data = xml;
    }
    //your code here

关于javascript - Internet Explorer 8 中 jQuery 的 .find().length 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4952498/

相关文章:

javascript - 如何乘以javascript中的所有值

javascript - 如何根据标题对多个表格重新排序?

xml - 根据节点值对XPath查询进行分组?

javascript - 在 Javascript 中删除和克隆 DOM 元素

javascript - jquery、json 和 xml

android - ProgressBar 间隙

javascript - 我可以链接到 dom 中的元素吗

javascript - 模板未加载

javascript - XML 问题 - 加载空白页

javascript - 在 Html 5 验证触发事件之前?