Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/466.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 是否隐藏筛选器上的特定表行?_Php_Javascript_Jquery_Html - Fatal编程技术网

Php 是否隐藏筛选器上的特定表行?

Php 是否隐藏筛选器上的特定表行?,php,javascript,jquery,html,Php,Javascript,Jquery,Html,我目前正在使用JS/jQuery/PHP,并编写了以下代码: 我希望进一步利用JS/jQuery来隐藏具有colspan属性的td的所有父(tr),当我运行搜索查询时,这些父(tr)不会立即由一个可见行执行(该查询会隐藏未找到搜索字符串的所有行)。更简单地说,我希望在执行搜索时隐藏表中的无关时间行。目前,我的筛选函数设置为只搜索没有colspan属性的表格单元格(即不是时间单元格)。这意味着所有时间行将始终可见 对于懒惰者,以下是我的搜索功能: function filter(selector

我目前正在使用JS/jQuery/PHP,并编写了以下代码:

我希望进一步利用JS/jQuery来隐藏具有colspan属性的td的所有父(tr),当我运行搜索查询时,这些父(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();
    });
}
函数过滤器(选择器、查询){
查询=$.trim(查询);
query=query.replace(//gi,“|”);
$(选择器).children('td:not([colspan])).each(函数(){
($(this.parent().text().search(new RegExp(query,“i”))<0)?$(this.parent().hide():$(this.parent().show();
});
}

将更简单、更高效的DOM搜索,只需将类添加到行中,只在适当的类中搜索并隐藏其他类,这对于单个结果非常有效,但仍然会删除多个结果的时间行
$('td[colspan]:visible').parent().each(function() {
    if($(this).siblings().first().children('td[colspan]').length > 0) {
        $(this).toggle();
    }
});