我想根據用戶的選擇顯示行。假設他只想要3行,那麼第四行和第五行就會隱藏起來。請在下面找到html和javascript的部分。試圖隱藏表格行時發生JavaScript錯誤
HTML
<table>
<tr id="sRow1">
<td>1a</td>
<td>1b</td>
</tr>
<tr id="sRow2">
<td>2a</td>
<td>2b</td>
</tr>
<tr id="sRow3">
<td>3a</td>
<td>3b</td>
</tr>
<tr id="sRow4">
<td>4a</td>
<td>4b</td>
</tr>
<tr id="sRow5">
<td>5a</td>
<td>5b</td>
</tr>
</table>
的JavaScript
// b gets value from xml file
while (b <= 5)
{
var rowName = "sRow" + b;
alert(rowName);
try {
document.getElementById(rowName).style.display = "none";
}
catch (err)
{
alert(err.description)
}
b++;
}
我得到所需的對象錯誤在的document.getElementById(rowName).style.display = 「無」;你能幫忙嗎?
我不明白你爲什麼需要在這裏試試。你確定'document.getElementById(rowName)'實際上找到元素嗎?如果沒有,它應該返回'null'並且進一步的屬性訪問 - 即'.style.display' - 應該導致錯誤。爲了防止這種情況,只需在嘗試設置其樣式之前檢查元素的存在。 – kangax 2009-09-16 23:23:09
適用於例如。 'B = 4'。也許'b'不是你所期望的?在錯誤發生之前您會收到警報的rowName是什麼? – bobince 2009-09-16 23:32:04
另一個奇怪的觀察,如果我將sRow中的id名稱更改爲sib,它的工作原理。 sRow是某種關鍵字。問候 – kobra 2009-09-16 23:42:18