2010-10-14 97 views
1

Javascript中刪除html表中的行的最佳方式是什麼? 元素<td>包含colspan和rowspan更多1. DOM中的函數deleteRow()不考慮colspans和rowspans。Javascript中刪除html表格的最佳方式是什麼?

+0

你能澄清嗎?它如何不考慮colspan和rowspan? http://www.jsfiddle.net/guTgd/ < - 給我們一個例子 – 2010-10-14 10:27:03

+0

http://www.jsfiddle.net/guTgd/3/ – 2010-10-14 10:58:17

回答

1

這聽起來像你的表是崩潰,因爲它不再有每行中的細胞數量相等。這是可以預料的。您需要替換受影響的行中缺少的單元格。

Colspan不應該是一個問題,因爲它的所有行都被刪除。然而,行跨度會影響到其他行,所以:使用的getElementsByTagName

1),從你的TR節點(不是你的文件),然後通過他們循環所有的TD元素用的getAttribute

2,以檢查行跨度屬性)如果其中一個屬性返回爲一個數字,則需要經過多行減1,然後在將會有一個行計算td的位置處插入一個td。
如果還有一些colspans正在進行,您將需要跟蹤這些信息以確定td真正在哪個列。當您插入新的時候,您還必須在後續行中查找colspans TD。

3)您可能需要抓取原始td的innerHTML或子節點,並將它們存儲在內存中,如果要重新添加下列行中的內容,一旦該行被刪除,內容也將消失。

4)一旦你做完了,現在終於可以安全地刪除該行了。

0

如果您裝入的jQuery

$('tr#id_of_the_row').remove(); 
相關問題