我正在尝试根据住宿区页面上的不同参数来过滤页面。我无法让过滤器协同工作,因此如果用户单击一个部分,它将与另一部分一起使用。
小提琴是http://jsfiddle.net/ktcle/YEtgM/2/
感谢您的帮助
$('input').change(function(){
$('input').each(function(){
var checked = $(this).attr('checked') || false;
var numberofrooms = $(this).data('bedrooms');
var sitelocation = $(this).data('location');
$('li').each(function(){
if ($(this).data('bedrooms')==numberofrooms){
checked ? $(this).show() : $(this).hide();
}
if ($(this).data('location')==sitelocation){
checked ? $(this).show() : $(this).hide();
}
});
});
});
答案 0 :(得分:0)
这样的事情怎么样 jsFiddle example ?
我给出了你的输入值有几个原因,但这里是jQuery:
$('input').change(function() {
var room_array = new Array(),
loc_array = new Array();
$('.br').each(function() {
if ($(this).is(':checked')) {
room_array.push($(this).data('bedrooms'));
}
});
$('.loc').each(function() {
if ($(this).is(':checked')) {
loc_array.push($(this).data('location'));
}
});
$('li').each(function() {
if ($.inArray($(this).data('location'), loc_array) > -1 && $.inArray($(this).data('bedrooms'), room_array) > -1) {
$(this).show();
} else {
$(this).hide();
}
});
});