2010-06-29 64 views
1

我试图删除动态生成的表中的一行;问题是这些行都没有生成任何类或ID,而且我无法获取代码。它会产生这样的代码:如何根据行中的一个单元格的内容(使用jQuery)删除表格行

<tr> 
    <td class="label">Who referred you?</td> 
    <td class="data">somebody</td> 
</tr> 
<tr> 
    <td class="label">terms</td> 
    <td class="data">these are the terms</td> 
</tr> 

有没有办法在具有“术语”(在这种情况下,第2行),该行获取和删除整行?与我不明白的text()filter()有什么关系?我知道我可以很容易地删除第二行,但有时它会是第二次,有时不会。

回答

2

使用jQuery:

$(".profile-fields tr:contains('terms')").remove();​​​​ 

see it in action

没有的jQuery(如果速度是一个问题):

var rows = document.getElementsByTagName("tr"); 
for (var i = rows.length; i--;) { 
    if(rows[i].innerHTML.indexOf("terms") !== -1) { 
    rows[i].parentNode.removeChild(rows[i]); 
    } 
} 
0

其实,我理解了它:

$ j(“。profile-fields td:contains('terms')“)。parent()。remove();

+0

可以更简单。看到我的更新 – galambalazs 2010-06-29 23:34:17

相关问题