0
我有atable在哪里删除除具有特定id的某些行以外的所有行。如何通过除特定ID以外的id删除表格行
我做了follwoing:
for(var y=0; y<table.rows.length; y++)
{
console.log("deleting row "+ y);
var initialRow=document.getElementById("initial-row");
if (table.rows[y].id!=initialRow)
{
table.deleteRow(y);
console.log("row deleted");
}
else continue;
}
但这并没有工作。有什么建议么? 编辑: 下面是HTML表:
<table align='center' cellspacing=1 cellpadding=1 id="data-table" border=1>
<tr id="head">
<th>Name</th>
<th>Type</th>
<th>Action</th>
</tr>
<tr id="initial-row">
<td><input type="text" id="text-field"></td>
<td>
<select name="levels-list" id="levels-list">
<option value="A" id="option-1">A</option>
<option value="B" id="option-2">B</option>
<option value="C" id="option-3">C</option>
</select>
</td>
<td><input type="button" class="add" id="add-button" value="Add"></td>
</tr>
</table>
我加入行动态诠释的JavaScript。然后,我需要删除一行,并刷新整个表,因为添加的行ID是动态的。为了刷新表格,我想删除除了标题和最初在HTML页面中的起始行之外的所有旧行。无法正确执行此操作。
您正在比较元素id字符串与元素对象。永远不会平等。 – charlietfl
var initialRow = document.getElementById('')'这不会返回该行的'id',它会给出整个元素,以便像'table'那样使'id'访问它的属性.rows''initialRow.id' – Lixus
var initialRow = document.getElementById(“initial-row”); if(table.rows [y] .id!= initialRow) 我不明白为什么要比较“table.rows [y] .id”和initialRow as initialRow将会是元素的对象,如果你的DOM包含具有“初始行”id的元素 而id是字符串 – SPidey