我想知道如果该行包含0?
,我怎么能删除一行这是我的表没有过滤方法的样子:
我想要实现的目标是:
可能以某种方式使用JQuery吗?我只使用一个简单的HTML表格:JSFIDDLE
<table>
<tbody>
<tr>
<th class="resultModule">
Module
</th>
<th class="resultCredits">
Credits
</th>
</tr>
<tr>
<td>
Test A
</td>
<td>
0
</td>
</tr>
<tr>
<td>
Test B
</td>
<td>
8
</td>
</tr>
<tr>
<td>
Test C
</td>
<td>
0
</td>
</tr>
<tr>
<td>
Test D
</td>
<td>
6.5
</td>
</tr>
</tbody>
</table>
P.S。我不想使用任何与数据库相关的答案。
答案 0 :(得分:3)
您可以使用filter()
查找第二个td
元素包含0
的行,然后remove()
。试试这个:
$('table tr').filter(function () {
return $(this).find('td:eq(1)').text() == '0';
}).remove();
答案 1 :(得分:1)
您可以使用:has()和:contains()
$('tr:has(td:contains(0))').remove();
$('tr:has(td:contains(^0$'))').remove();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<table>
<tbody>
<tr>
<th class="resultModule">
Module
</th>
<th class="resultCredits">
Credits
</th>
</tr>
<tr>
<td>
Test A
</td>
<td>
80
</td>
</tr>
<tr>
<td>
Test B
</td>
<td>
8
</td>
</tr>
<tr>
<td>
Test C
</td>
<td>
0
</td>
</tr>
<tr>
<td>
Test D
</td>
<td>
6.5
</td>
</tr>
</tbody>
</table>
<强>更新强>
注意,如果恰好有包含0的文字,如上所述将会中断。在这种情况下,您可以
$('tr:has(td:contains(0))').filter(function(){
return $(this).find('td:contains(0)').text() == '0';
}).remove();