2011-06-20 38 views
5

如果我有一个ID =“tbl_users”表,我有删除表中的所有行,除了一个与<th>标签

<tr> 
    <th>name</th> 
    <th>username</th> 
    <th>password</th> 
</tr> 

和波纹管我追加的数据。如何在重新加载用户之前清空表格(使用darta删除所有行),但不要删除行?我在项目中使用JQuery。

+1

丹卡TR TD前TR日和TBODY前添加THEAD标签,你的HTML将更正确,然后你可以享受Vivek给你的快速选择器。否则,你需要使用Guffa,因为它们不那么直接,会影响你的表现。 – eugeneK

回答

7

添加tbody标签在你的HTML,然后做这个 -

$('#tbl_users').find('tbody').remove(); 
+0

如果他有tbody ... – eugeneK

+0

@ eugeneK-是的。我编辑了我的答案。 – Vivek

+0

我不明白这是如何回答这个问题的:/ –

21

如果你总是有标题行第一,你可以直接跳过它:

$('#tbl_users tr').slice(1).remove(); 

否则,您可以使用has方法:

$('#tbl_users tr').has('td').remove(); 

要专门查找doe sn't有th标签,你可以使用filter方法:

$('#tbl_users tr').filter(function() { 
    return !$(this).has('th'); 
}).remove(); 
1
$('table#tbl_users').find('tr:not(:has(th))).remove(); 
1

使用本

$('#tbl_users td').parent().remove(); 
相关问题