我有一个问题,我的代码在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的子节点吗?
答案 0 :(得分:1)
childNodes的计数有所不同。有些浏览器包含空textNodes,有些则没有。在我认为您正在描述的这种操作中,最好使用父getElementsByTagName()
方法。这样,您正在寻找的每个孩子的儿童数量和指数将保持一致。
或者您可以尝试使用.children
代替childNodes
希望这会有所帮助