javascript - 删除表中不包含特定文本字符串的所有行

标签 javascript jquery html-table

如何从表中删除列中没有特定文本的所有行?
这不起作用:

$('#mytable').find('tr:not(:has(th))').filter(
    function() {
          return $(this).find('td').text() != $("#some_component").val();
     }).remove();
}  

更新

发布的答案对我不起作用。他们要么删除所有行(我需要检查特定行中的文本,而不是第一行或任何行),要么什么都不做。
以下是我第一次尝试的修改,但仍然有效

$('#mytable').find('tr:not(:has(th))').filter(
    function() { 

       return ($(this).find('td').text().indexOf($("#some_component").val()) < 0);
    } 
).remove(); 

最佳答案

HTML:

<table id="myTable">
    <tr>
        <td>Example One</td>
        <td>Example Two</td>
        <td>Example Three</td>
    </tr>
    <tr>
        <td>Test One</td>
        <td>Test Two</td>
        <td>Test Three</td>
    </tr>
    <tr>
        <td>Trial One</td>
        <td>Trial Two</td>
        <td>Trial Three</td>
    </tr>
</table>

JavaScript jQuery(如果包含):

$(document).ready( function() {
    $('#myTable td:contains("Test")').parents("tr").remove();
});

JavaScript jQuery(如果不包含):

$(document).ready( function() {
    $('#myTable td').not(':contains("Test")').parents("tr").remove();
});

JSFiddle:http://jsfiddle.net/22QKM/

关于javascript - 删除表中不包含特定文本字符串的所有行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18401303/

相关文章:

javascript - 如何在完全运行后停止间隔

javascript - 来自 Express 的响应未定义且待处理(React 前端)

即使在 columndefs 中指定 orderable false 时,jquery 数据表也会对列进行排序

html - 如何编写可访问的html表格?

javascript - 使用 addEventListener 进行点击来播放 popup.html 中的音频?

javascript - 访问未配置。您的项目未启用 API (Google+ API)。请使用 Google Developers Console 更新您的配置

javascript - 如何检测数据表插件中的右键单击

jquery - 从 jquery 中的 .ajax() 函数获取数据

javascript - 如何将此 jQuery 代码放入外部 .js 文件中?

javascript - 我如何简化这段代码?有更好的方法吗?