这是我的一个项目的一部分,对于这个论坛,我做了一个简单而简短的版本。在这里,我先有一张桌子。我在名为arr[]
的数组中保存了它的行。然后我删除了tbody并创建了另一个。然后我将tr
输入代码保存在arr[]
中的元素附加到新创建的tbody中。
tbody.appendChild(arr[i]);
但它并不像我想要的那样工作。没有tr元素附加到新创建的tbody。我怎样才能做到这一点?
var table=document.createElement('table');
var arr=[];
table.setAttribute('style','border:1px solid black;border-collapse:collapse;');
var thead=document.createElement('thead');
thead.setAttribute('style','border:1px solid black;border-collapse:collapse;');
for(i=0;i<1;i++){
var row=thead.insertRow(i);
for(j=0;j<2;j++){
var cell=row.insertCell(j);
cell.setAttribute('style','border:1px solid black;text-align:center;');
cell.innerHTML='tbheadCell'+j;
}
}
table.appendChild(thead);
var tbody=document.createElement('tbody');
tbody.setAttribute('style','border:1px solid black;');
for(i=0;i<2;i++){
var row=tbody.insertRow(i);
for(j=0;j<2;j++){
var cell=row.insertCell(j);
cell.setAttribute('style','border:1px solid black;text-align:center;');
cell.innerHTML='tbodyCell'+j;
}
arr.push(row);
}
table.appendChild(tbody);
document.body.appendChild(table);
table.removeChild(tbody);
var newtbody=document.createElement('tbody');
tbody.setAttribute('style','border:1px solid black;');
console.log(arr);
for(i=0;i<arr.length;i++){
tbody.appendChild(arr[i]);
}
table.appendChild(newtbody);
答案 0 :(得分:0)
在最后一个循环中,你正在向tbody申请并附加newtbody。 你应该写:
for(i=0;i<arr.length;i++){
newtbody.appendChild(arr[i]);
}