该函数只是在调用函数时将新行注入空表。
似乎自<td>
类被正确分配后,<tr>
也会被分配......但它没有!
var newRow = document.createElement("tr");
for (data in dataArray)
{
var newName = document.createElement("td");
newName.className = classNames[data];
newName.innerHTML = dataArray[data];
newRow.appendChild(newName);
counter++;
}
document.getElementById("capturedData").appendChild(newRow);
var newRow2 = document.createElement("tr");
newRow2.class = "hiddenRow";
for (data in dataArray)
{
var newData = document.createElement("td");
var newDataField = document.createElement("input");
newDataField.type = "hidden";
newDataField.name = "name" + data;
newDataField.value = dataArray[data];
newData.class = classNames[data];
newData.value = dataArray[data];
newData.appendChild(newDataField);
newRow2.appendChild(newData);
}
这真的很奇怪。所有新添加的<td>
元素都分配了它们的类,它们显示在DOM中。但是<tr>
元素不接受类赋值,而在DOM中它们没有类。
这是为什么?我已经读到了脚本执行所谓的异步性,但肯定不是这样,它会打败目的,不是吗?
答案 0 :(得分:3)
DOM元素没有属性class
,因为它是保留关键字。您正在寻找className
:
newRow2.className = "hiddenRow";
单元格(newData
)相同。它适用于您的其他单元格,因为您已使用className
:
newName.className = classNames[data];
答案 1 :(得分:1)
仅使用 className ,而不是类。 <TR>
中没有类属性。