嘿伙计们在这里需要一点帮助, 我使用 addROW 函数向表中添加一个新行,但我想更改每个新行的 html 元素的名称。 代码
function addRow(tableID) {
var table = document.getElementById(tableID);
var rowCount = table.rows.length;
var row = table.insertRow(rowCount);
var colCount = table.rows[0].cells.length;
for(var i=0; i<colCount; i++) {
var newcell = row.insertCell(i);
newcell.innerHTML = table.rows[0].cells[i].innerHTML;
//alert(newcell.childNodes);
switch(newcell.childNodes[0].type) {
case "text":
newcell.childNodes[0].value = "";
newcell.childNodes[0].name = "newratings" //this doesnt work
break;
case "a":
newcell.childNodes[0].value = "Delete Course";
break;
case "select-one":
newcell.childNodes[0].selectedIndex = 0;
newcell.childNodes[0].name = "newcourses" //this doesnt work
break;
}
}
}
最佳答案
您是否考虑过使用 setAttribute 函数。试试这个:
.....childNodes[0].setAttribute("name", "yourName");
您可能需要进行更多搜索才能使其适用于您的示例,但这是一个开始。
需要注意的一点是,子节点将返回所有子节点可能性的集合,这些子节点可能是标签、文本节点或注释,因此更好的选择是改用 getElementsByTagName()。
关于javascript - 无法通过 JAVASCRIPT 更改新行的 html 元素的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9410208/