【问题标题】:Code works on firefox but not IE代码适用于 Firefox 但不适用于 IE
【发布时间】:2014-03-31 14:46:07
【问题描述】:

首先我加载一个 XML 文件。然后循环查找数据。

var x = xmlDoc.getElementsByTagName("number");
var l = x.length;                       
for (i=0;i<l;i++){
    if (x[i].childNodes[0].nodeValue == strTeam) {                              

        document.write("<center>Scouting Data For: " + x[i].childNodes[0].nodeValue + "</center></br>");                    
        var xmlDoc1 = loadXMLString(teamXML2); 

代码一直循环查找,直到我输入 if 语句。一旦 If 语句完成并且循环继续,我得到一个错误。

SCRIPT5007: Unable to get property 'childNodes' of undefined or null reference

在这行代码

if (x[i].childNodes[0].nodeValue == strTeam)

如果这有帮助,我必须使用 IE,因为 Windows Surface RT 上没有其他浏览器。但是我在我的桌面上用 Firefox 和 chrome 运行了代码,它运行没有错误。有什么帮助吗?


所以这里只是一个编辑,

如果我删除var l = x.length 并将i&lt;l 替换为i&lt;x.length 我在这行代码for (i=0;i&lt;l;i++){ 上收到Access is Denied 错误

奇怪。

【问题讨论】:

    标签: javascript windows internet-explorer firefox


    【解决方案1】:

    看看这个:

    childNodes[] not working in IE9 as in IE7 and 8

    您的 html 是否有任何代码会导致两个 html-tags 之间出现空白,这应该导致文本节点?

    【讨论】:

    • 不,我没有空格。用新错误查看我的编辑。奇怪
    最近更新 更多