Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/375.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
Javascript 使用jQuery的动态过滤器_Javascript_Jquery_Html - Fatal编程技术网

Javascript 使用jQuery的动态过滤器

Javascript 使用jQuery的动态过滤器,javascript,jquery,html,Javascript,Jquery,Html,因此,我正在使用PHP、SQL和其他后端语言。我的客户想在他的网站上安装一个动态过滤器。我在网上找到了一个脚本,但它不起作用 $(文档).ready(函数(){ $('.results>td').hide(); $('div.tags').find('input:checkbox').on('click',function()){ $('.results>td').hide(); $('div.tags').find('input:checked').each(function(){ $('.

因此,我正在使用PHP、SQL和其他后端语言。我的客户想在他的网站上安装一个动态过滤器。我在网上找到了一个脚本,但它不起作用

$(文档).ready(函数(){
$('.results>td').hide();
$('div.tags').find('input:checkbox').on('click',function()){
$('.results>td').hide();
$('div.tags').find('input:checked').each(function(){
$('.results>td.'+$(this.attr('rel')).show();
});
});
});

    生产商
  • 允诺
  • NetStor
  • 明星
  • 莱西
  • G-Tech
  • 多逻辑
  • 老虎科技

您需要检查第一个td的内容,而不是类的内容

$(document).ready(function () {
    $('.results > tr').hide();

    $('div.tags').find('input:checkbox').on('click', function () {
        $('.results > tr').hide();
        $('div.tags').find('input:checked').each(function () {
            $('.results > tr').has('td:first-child:contains("' + $(this).attr('rel')+'")').show();
        });
    });
});
演示:


但更好的解决方案是更改标记,以便tr元素将该值作为属性值,如

然后


演示:

HTML for
。结果
?我编辑了您的文章,以利用堆栈溢出的代码片段功能,它允许您在没有外部链接的情况下使用与JSFIDLE基本相同的功能。即使它是动态生成的服务器端,也可以。根据您包含的代码,有必要给出任何有用的答案。事实上,如果没有服务器端代码的输出,就不可能回答。因此,生成后的HTML,如果没有它,甚至尝试帮助您都没有意义。你可以看到你自己,jQuery问题,12分钟前被问到却没有答案?因此,这个问题有点不对劲。看看小提琴:我猜了一下你的html表是什么样子的。这是工作!:)但如果没有检查支票盒,则不会显示任何信息。如何显示所有产品的复选框没有被选中?所以,我需要它在td中,因为将有更多的搜索类型。有人能用td写同样的东西吗?@patwoj98对不起。您想在第一个版本中使用相同的内容吗?@patwoj98要搜索的列在这里是7。。。在前面的例子中是4-我们如何在一个脚本中搜索列:1,4,7?
$(document).ready(function () {
    $('.results > tr').hide();

    $('div.tags').find('input:checkbox').on('click', function () {
        $('.results > tr').hide();
        $('div.tags').find('input:checked').each(function () {
            $('.results > tr[data-producent="' + $(this).attr('rel') + '"]').show();
        });
    });
});