使用jQuery,如何删除表中除第一行外的所有行?这是我第一次尝试使用索引选择器。如果我正确地理解了这些例子,以下应该可以工作:

$(some table selector).remove("tr:gt(0)");

我将其理解为“在jQuery对象中包装一些表,然后删除所有'tr'元素(行),其中这些行的元素索引大于零”。实际上,它执行时不会产生错误,但不会从表中删除任何行。

我错过了什么,我该如何修复?当然,我可以直接使用javascript,但我有这么多的乐趣与jQuery,我想用jQuery来解决这个问题。


当前回答

效果很好

$("#myTable tbody").children( 'tr:not(:first)' ).html("");

其他回答

包装在函数中:

function remove_rows(tablename) { 
    $(tablename).find("tr:gt(0)").remove();        
}

然后叫它:

remove_rows('#table1');
remove_rows('#table2');

这应该可以工作:

$(document).ready(function() {
   $("someTableSelector").find("tr:gt(0)").remove();
});

考虑一个id为tbl的表:jQuery代码如下:

$('#tbl tr:not(:first)').remove();

这在我的情况下,以以下方式工作,工作很好

$("#compositeTable").find("tr:gt(1)").remove();

删除所有行,除了第一行(除了头),使用下面的代码:

$ (" # dataTable tr: gt(1)”).remove ();