在过滤器上隐藏特定的表行?

时间:2013-03-24 23:17:18

标签: php javascript jquery html

我目前正在搞乱JS / jQuery / PHP并编写了以下代码:

http://cole.quinnchrzan.com/tv

我希望进一步利用JS / jQuery来隐藏所有带有colspan属性的td的父级(tr),当我运行搜索查询时,这些属性不会立即由可见行继续(它隐藏了找不到搜索的所有行串)。更简单地说,我希望在执行搜索时隐藏表中的无关时间行。目前我的过滤功能设置为仅搜索没有colspan属性的表格单元格(即不是时间单元格)。这意味着所有时间行始终可见。

对于懒惰,这是我的搜索功能:

function filter(selector, query) {
    query = $.trim(query);
    query = query.replace(/ /gi, '|');

    $(selector).children('td:not([colspan])').each(function() {
        ($(this).parent().text().search(new RegExp(query, "i")) < 0) ? $(this).parent().hide() : $(this).parent().show();
    });
}

1 个答案:

答案 0 :(得分:0)

$('td[colspan]:visible').parent().each(function() {
    if($(this).siblings().first().children('td[colspan]').length > 0) {
        $(this).toggle();
    }
});