Jquery同位素复选框过滤

时间:2011-08-10 00:08:53

标签: javascript jquery checkbox filter jquery-isotope

我正在使用jQuery同位素。一切都很好,但我有过滤问题。我想使用多个类别,我有5个复选框,我不能同时使用它们。我该怎么办?

$("#classic").click(function() {
    if($("#classic").is(":checked")) {
    $('#box').isotope({ filter: '.classic' });
    } else {
    $('#box').isotope({ filter: '' });
    }
});

实施例

我的项目= a,b,c,d,e,f,g,h

categories = x(a,b,e)y(c,h)z(d,f,g)

现在,如果我选择x和z复选框,它只显示a,b,e,d,f,g

但我做不到。我该怎么办?

2 个答案:

答案 0 :(得分:4)

以下是复选框过滤的解决方案: http://jsfiddle.net/3nY9V/6/

答案 1 :(得分:2)

看起来你的代码中有一个js错误(缺少单引号),并且在一个地方,classic用作id,而在另一个地方用作类。只想找到那不是问题。试试这个。

function checkIsoTope(){
    var ids = [];
    $("#classic, #den, #wer").filter(":checked").each(function(){
      ids.push("." + this.id);
    });    
    $('#box').isotope({ filter: ids.join(',')});
}
$("#classic, #den, #wer, #allCheckboxId").click(checkIsoTope);