Javascript:Chrome为[object HtmlLevel]提供[object text]
我在我的javascript函数中使用以下for循环在我的应用程序中创建一个数据行Javascript:Chrome为[object HtmlLevel]提供[object text],javascript,google-chrome,dom,html,Javascript,Google Chrome,Dom,Html,我在我的javascript函数中使用以下for循环在我的应用程序中创建一个数据行 for (var j = 0, length = contentsArray.length; j < length; j++) { //get the control for the node at this index contentControl = contentControlDef.getControlForObjectAtContainerIndex(contentsArr
for (var j = 0, length = contentsArray.length; j < length; j++) {
//get the control for the node at this index
contentControl = contentControlDef.getControlForObjectAtContainerIndex(contentsArray[j], j);
//repopulate node; call overwriteDomNode(instanceDom, contentsArray, index);
contentControl.overwriteDomNode(contentsDom.childNodes[j], contentsArray, j);
}
for(var j=0,length=contentsArray.length;j
在这种情况下,contentsDom.childNodes
是IE和FF中的[object htmldevelments]
数组。但在Chrome中,这是不同的。它在数组中具有相同数量的元素。但它同时具有[objecttext]
和[objecthtmldevelment]
两种类型。它应该有所有的HTMLDivelments。有人知道为什么chrome会出现这种情况吗?将代码更改为:
for (var j = 0, length = contentsArray.length; j < length; j++) {
//get the control for the node at this index
contentControl = contentControlDef.getControlForObjectAtContainerIndex(contentsArray[j], j);
//repopulate node; call overwriteDomNode(instanceDom, contentsArray, index);
contentControl.overwriteDomNode(contentsDom.children[j], contentsArray, j);
}
for(var j=0,length=contentsArray.length;j
childNodes
还返回文本节点。如果不需要文本节点,请使用子节点