javascript - 如何使用 jQuery 或 JavaScript 对表行进行分组并过滤组?

标签 javascript jquery html

我正在使用<tbody>对表行进行分组。我的表格如下所示:

<label for="kwd_search">Search:</label> <input type="text" id="kwd_search" value=""/>

<br /><br />

<table id="indberetningstable" style="text-align: center; border: solid; align: center">

    <thead>
        <tr>
            <th>Valgsted</th>
            <th>Parti</th>
            <th>Stemmer</th>
            <th>Gem</th>
        </tr>
    </thead>

        <tbody>
            <tr>
                <td>Idrætshuset</td>
                <td></td>
                <td></td>
                <td></td>
            </tr>
                <tr>
                    <td></td>
                    <td>A          - Socialdemokraterne</td>
                    <td><input type="text" style="width: 175px"></td>
                    <td><input type="submit" value="Gem"></td>
                </tr>
                <tr>
                    <td></td>
                    <td>B          - Det Radikale Venstre</td>
                    <td><input type="text" style="width: 175px"></td>
                    <td><input type="submit" value="Gem"></td>
                </tr>
                <tr>
                    <td></td>
                    <td>C          - Det Konservative Folkeparti</td>
                    <td><input type="text" style="width: 175px"></td>
                    <td><input type="submit" value="Gem"></td>
                </tr>

        </tbody>
        <tbody>
            <tr>
                <td>Strandvejsskolen</td>
                <td></td>
                <td></td>
                <td></td>
            </tr>
                <tr>
                    <td></td>
                    <td>A          - Socialdemokraterne</td>
                    <td><input type="text" style="width: 175px"></td>
                    <td><input type="submit" value="Gem"></td>
                </tr>
                <tr>
                    <td></td>
                    <td>B          - Det Radikale Venstre</td>
                    <td><input type="text" style="width: 175px"></td>
                    <td><input type="submit" value="Gem"></td>
                </tr>
                <tr>
                    <td></td>
                    <td>C          - Det Konservative Folkeparti</td>
                    <td><input type="text" style="width: 175px"></td>
                    <td><input type="submit" value="Gem"></td>
                </tr>

        </tbody>

</table>​

您可以在此处查看示例:

http://jsfiddle.net/zDA7n/

如何过滤表格,以便当我在 "kwd_search" 中写入搜索字符串时输入字段,它将隐藏除 <tbody> 之外的所有内容在其第一列 (Valgsted) 中包含搜索文本的组?

最佳答案

使用:contains选择器(注意:区分大小写):

$('#kwd_search').on('change',function() {
    var val = $.trim($(this).val());
    $('#indberetningstable tbody').show();
    if (val) {
        $('#indberetningstable tbody:not(:contains("'+val+'"))').hide();
    };
});​

http://jsfiddle.net/mblase75/pEfSF/

对于不区分大小写的版本,您需要implement a custom version of the :contains selector .

关于javascript - 如何使用 jQuery 或 JavaScript 对表行进行分组并过滤组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13159307/

相关文章:

jQueryUI 自动完成 - 将搜索结果与 DOM 中的输入相邻放置

html - Bootstrap 元素在虚拟服务器上不起作用

java - 使用 jsoup 解析 html 表

javascript - jQuery 手机 : absolute external panel on right side not working

javascript - 解释一下这个 JavaScript onload 函数

javascript - 如何在 javascript 中循环遍历具有特定键和值的 json 对象?

javascript - 从 JavaScript 模型中的现有属性返回未定义

javascript - 如何从逐像素颜色数组中绘制图像?

javascript - 你能在不影响历史的情况下使用散列导航吗?

javascript - 无法获取输入类型 ="file"的值?