子节点无法在Internet Explorer中工作?

时间:2014-08-20 09:36:53

标签: javascript internet-explorer google-chrome row children

我有一个问题,我的代码在Chrome上运行100%正常,它的作用是从表行中获取文本和值但是一旦进入IE它就会停止工作并将其缩小到childNodes这里是一个在IE中不起作用的代码的快速示例:

var t = document.getElementById('tableFull');

for (var i = 1, row; row = t.rows[i]; i++) {

   var tee = t.childNodes[3].childNodes[i].rowIndex;
   var subtractCost =t.childNodes[3].childNodes[i].childNodes[1].childNodes[1].innerHTML;
   var subtractName = t.childNodes[3].childNodes[i].childNodes[0].childNodes[0].innerHTML;

}

任何人都知道如何在这里替换IE的子节点吗?

1 个答案:

答案 0 :(得分:1)

childNodes的计数有所不同。有些浏览器包含空textNodes,有些则没有。在我认为您正在描述的这种操作中,最好使用父getElementsByTagName()方法。这样,您正在寻找的每个孩子的儿童数量和指数将保持一致。

或者您可以尝试使用.children代替childNodes

希望这会有所帮助