xóa bảng jquery


103

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

Làm cách nào để xóa tất cả các hàng khỏi bảng?

Câu trả lời:


160

Sử dụng .remove ()

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

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

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

Nếu các hàng là con của bảng thì bạn có thể sử dụng bộ chọn con thay vì bộ chọn con, như

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

16
hãy 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 một tbodyphần tử ngầm xung quanh các trphần tử.
nickf

96

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

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

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

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

điều này đang hoạt động, nhưng điều này loại bỏ bản thân 'tbody' với tất cả 'tr' bên trong nó.
Hakan Fıstık

Bạn nói đúng, @HakamFostok. Tôi đã chỉnh sửa câu trả lời của mình để sử dụng rỗng () thay thế
HoffZ 22/09/18

41

Nhanh hơn một chút so với việc xóa từng cái riêng lẻ:

$('#myTable').empty()

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



12

Lựa chọn hạt nhân:

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

Phá hủy mọi thứ bên trong #yourtableid. Hãy cẩn thận với các bộ chọn của bạn, vì nó sẽ phá hủy mọi html trong bộ 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à phong cách 'tốt nhất' :) Tôi sẽ không khuyên bạn nên nó nói chung
phật đản

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

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

Điều này sẽ loại bỏ tất cả những gì trtdkhi còn nhỏ. tức là tất cả các hàng ngoại trừ tiêu đề sẽ bị xóa.


Đây là cái duy nhất phù hợp với tôi. Xóa tất cả ngoại trừ tiêu đề ...
Elbert Villarreal

6

Thao tác này sẽ xóa tất cả các hàng thuộc nội dung, do đó giữ nguyên tiêu đề và nội dung:

$("#tableLoanInfos tbody tr").remove();

1
<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à loại bỏ:

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


0

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

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

loại bỏ mọi tr có cha mẹ được gọi là 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>");
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.