0
我正在使用以下jquery的多个类别的过滤器。jquery隐藏过滤器中没有结果的复选框
var getFilter = function(category) {
var filter = $("#filters ." + category + ":checked").map(function() {
return "." + this.value;
}).get().join(",");
filter = (filter.length > 0) ? filter : "*";
console.log(filter);
return filter;
}
$("#filters :checkbox").click(function() {
var all = $(".filterme");
var tgts = all.filter(getFilter("brand")).filter(getFilter("class")).filter(getFilter("color"));
all.not(tgts).hide();
tgts.show();
});
上可以看到:除了我希望能够隐藏非相关的复选框http://jsfiddle.net/ar3PY/2/
一切都很正常。 如果我检查“宝马”,那么“奥迪”复选框应该隐藏(不可点击),以及结果中不存在的其他复选框,如“豪华轿车”和“SUV”。
感谢。但这只会禁用兄弟复选框。我怎样才能阻止结果中没有任何答案的其他复选框。 – user2902337
所以如果你点击'audi'应该选择哪些选项? –
紧凑,豪华轿车和运动应该仍然可用,但运动应该隐藏。颜色也一样:银色,蓝色和红色应该可用,但白色应禁用。 – user2902337