我有一个 div 列表,我想使用 2 组复选框进行过滤:Type
和Category
.
当检查2个类别时,应显示DIV至少包含1个类别的DIV。
检查类型时,它应该只显示该类型的 DIV。即使它包含选中的类别。
<input type="checkbox" name="type[]" value="Type 1">
<input type="checkbox" name="type[]" value="Type 2">
<input type="checkbox" name="type[]" value="Type 3">
<input type="checkbox" name="category[]" value="1">
<input type="checkbox" name="category[]" value="2">
<input type="checkbox" name="category[]" value="3">
<input type="checkbox" name="category[]" value="4">
DIV的:
<div data-type="Type 1" data-cat="1 4">
<div data-type="Type 2" data-cat="1 2 3">
我到目前为止的代码(仅过滤器类型):
$('form input:checkbox').change(function(){
var type = [];
var checked = $(':checkbox:checked').length;
// Hide all
$('#videoHolder').children('div').hide();
$(':checkbox:checked').each(function(i){
type[i] = $(this).val();
$('#videoHolder').children('div[data-type="' + type[i] + '"]').fadeIn();
});
// Show all
if(checked==0){
$('#videoHolder').children('div').fadeIn();
}
});