使用jQuery,一次删除html表中所有数据行的最有效方法是什么?

时间:2011-06-06 01:13:16

标签: jquery html-table

我知道我可以使用下面的代码从html表中删除一行:

  $(this).closest("tr").remove();

但我现在希望能够快速删除所有行(因此只留下标题)在html表上。类似的东西:

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

是否有任何语法或我是否需要遍历每一行并逐个删除它们?

4 个答案:

答案 0 :(得分:4)

我会这样做......

$('#myTable > tbody').empty();

这会使您的tbody元素为空。

答案 1 :(得分:3)

出于好奇而创造了一个jsperf。 http://jsperf.com/jquery-clear-a-table

奇怪的是,您发布的代码似乎效率稍高。虽然这一切都非常接近,所以我只想使用最有意义的东西,就可读性而言。

答案 2 :(得分:0)

我结束了:

$("#myTable").find("tr:gt(0)").remove();

答案 3 :(得分:-2)

如果我理解你的话,你想要删除所有的行,而不是删除第一行,或者如果你的表中有tbody,那么tbody中的所有行都是如此。因为你正在使用最接近的我假设你在某个事件中编码,所以在这种情况下你可以使用以下内容:

$('tr', $(this).closest('tbody')).remove();
//or using your table 
$('tr:not:first', '#mytable').remove();