2010-04-12 109 views

回答

122

使用.remove()

$("#yourtableid tr").remove(); 

如果你想保留以備將來使用的數據,甚至刪除它,然後之後你可以使用.detach()

$("#yourtableid tr").detach(); 

如果行是孩子表,那麼你可以使用子選擇器,而不是後代選擇器,如

$("#yourtableid > tr").remove(); 
+11

注意最後一個:大多數瀏覽器在'tr'元素周圍添加一個隱式'tbody'元素。 – nickf 2010-04-12 06:20:57

38

不是分別去除每一個稍快:

$('#myTable').empty() 

技術上講,這將移除theadtfoottbody元件太。

60

如果要清除數據,但保持頭:

$('#myTableId tbody').remove(); 

表必須以這種方式進行格式化:

<table id="myTableId"> 
    <thead> 
     <tr> 
      <th>header1</th><th>header2</th> 
     </tr> 
    </thead> 
    <tbody> 
     <tr> 
      <td>data1</td><td>data2</td> 
     </tr> 
    </tbody> 
</table> 
+1

thanks.this幫助 – 2012-06-22 07:57:14

+0

這是工作,但這刪除'tbody'本身的所有'TR'裏面。 – 2016-11-15 14:45:25

24

,我需要這樣的:

$('#myTable tbody > tr').remove(); 

它刪除除標題以外的所有行。

9

核選擇:

$("#yourtableid").html(""); 

破陣的#yourtableid內的一切。小心你的選擇器,因爲它會破壞任何在你通過選擇器的HTML!

+2

+1對於核:)。但應該明白,這不是'最好'的風格:)我不會推薦它在一般 – Budda 2014-01-06 03:29:20

+0

大聲笑。同意。在過去,我已經使用這種特殊的方法來解決困難的情況*。它在JQuery應用程序領域有一些有效的用處。 – KevinDeus 2014-01-07 07:22:03

5
$("#employeeTable td").parent().remove(); 

這將去除具有td爲孩子所有tr。即除標題以外的所有行都將被刪除。

0
$('#myTable > tr').remove(); 
0

具有像這樣的表(具有報頭和身體)

<table id="myTableId"> 
    <thead> 
    </thead> 
    <tbody> 
    </tbody> 
</table> 

移除每Tr具有#tableId

$('#tableId tbody > tr').remove(); 

內部和反向如果父母稱爲TBODY你想添加到你的表格

$('#tableId tbody').append("<tr><td></td>....</tr>"); 
0
<table id="myTable" class="table" cellspacing="0" width="100%"> 
    <thead> 
     <tr> 
      <th>Header 1</th> 
      <th>Header 2</th> 
      <th>Header 3</th> 
     </tr> 
    </thead> 
    <tbody id="tblBody"> 

    </tbody> 
</table> 

,並刪除:

$("#tblBody").empty(); 
1

這將刪除所有屬於身體,從而保持頭部和身體的完整行:

$( 「#tableLoanInfos TBODY TR」)刪除( );