2010-04-12 30 views
76

Tôi có một bảng HTML chứa đầy một số hàng.xóa bảng jquery

Làm thế nào tôi có thể xóa tất cả các hàng trong bảng?

Trả lời

122

Sử dụng .remove()

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

Nếu bạn muốn giữ lại dữ liệu để sử dụng trong tương lai ngay cả sau khi loại bỏ nó sau đó bạn có thể sử dụng .detach()

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

Nếu các hàng là trẻ em của sau đó bạn có thể sử dụng công cụ chọn con thay vì chọn con cháu, như

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

cẩn thận với điều cuối cùng: hầu hết các trình duyệt đều thêm phần tử 'tbody' tiềm ẩn xung quanh phần tử' tr'. – nickf

38

Hơi nhanh hơn loại bỏ mỗi một cá nhân:

$('#myTable').empty() 

Về mặt kỹ thuật, điều này sẽ loại bỏ thead, tfoottbody yếu tố quá.

60

Nếu bạn muốn xóa dữ liệu nhưng giữ tiêu đề:

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

Bảng phải được định dạng theo cách này:

<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 đã giúp –

+0

điều này đang hoạt động, nhưng điều này sẽ tự xóa 'tbody' bằng tất cả 'tr' bên trong nó. –

24

tôi cần này:

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

Nó xóa tất cả các hàng ngoại trừ tiêu đề.

9

Các tùy chọn hạt nhân:

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

Phá hủy tất cả mọi thứ bên trong #yourtableid. Hãy cẩn thận với bộ chọn của bạn, vì nó sẽ hủy bất kỳ html nào trong công cụ chọn mà bạn vượt qua!

+2

+1 cho hạt nhân :). Nhưng nên hiểu rằng đó không phải là 'tốt nhất' phong cách :) Tôi sẽ không khuyên bạn nên nó nói chung – Budda

+0

lol. Đã đồng ý. Tôi đã sử dụng phương pháp đặc biệt này trong quá khứ cho tốc độ và * giải quyết các tình huống khó khăn *. Nó có một số sử dụng hợp lệ trong lĩnh vực ứng dụng JQuery. – KevinDeus

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

Điều này sẽ xóa tất cả trtd làm trẻ em. nghĩa là tất cả các hàng ngoại trừ tiêu đề sẽ bị xóa.

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

Có một bảng như thế này (với một tiêu đề và một cơ thể)

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

loại bỏ tất cả các tr có cha mẹ gọi tbody bên trong #tableId

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

và ngược lại nếu bạn muốn thêm vào bảng của mình

$('#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> 

Và Di:

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

này sẽ loại bỏ tất cả các hàng thuộc cơ thể, do đó giữ các tiêu đề và cơ thể còn nguyên vẹn.

$ ("# tableLoanInfos tbody tr") loại bỏ ();