如果表行包含零

时间:2015-06-08 12:48:57

标签: jquery html css

我想知道如果该行包含0?

,我怎么能删除一行

这是我的表没有过滤方法的样子: enter image description here

我想要实现的目标是:

enter image description here

可能以某种方式使用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。我不想使用任何与数据库相关的答案。

2 个答案:

答案 0 :(得分:3)

您可以使用filter()查找第二个td元素包含0的行,然后remove()。试试这个:

$('table tr').filter(function () {
    return $(this).find('td:eq(1)').text() == '0';
}).remove();

Example fiddle

答案 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();