复选框筛选结果

时间:2012-08-01 11:47:43

标签: javascript jquery

我正在研究与this类似的东西。

我想补充的是,当选择“1卧室”时,即使没有选择任何位置复选框,也应显示有1卧室的任何项目。

感谢。

2 个答案:

答案 0 :(得分:2)

您需要做的就是在底部的语句中添加“或”,以检查数组是否为空。

保持当前的代码结构,代码的最后一位看起来像这样:

$('li').each(function() {
    if (($.inArray($(this).data('location'), loc_array) > -1 || loc_array.length == 0) && ($.inArray($(this).data('bedrooms'), room_array) > -1 || room_array.length == 0)) {
        $(this).show();
    } else {
        $(this).hide();
    }
});

当然,您的代码可以重新考虑,以便于阅读和(可能)更高效。但这样做的目的是帮助您了解您需要做什么。重新分解后来!

答案 1 :(得分:0)

在输入更改功能中尝试此操作:

var bedrooms = $(this).data('bedrooms');
$('ul > li').each(function(){
    if($(this).data('bedrooms') !== bedrooms) $(this).toggle();
});