我正在使用 jQuery 进行实时过滤器。您可以选择名称中包含字符串的元素或/和按位置和/或活动过滤的元素。这就是想法。我的脚本工作正常,但处于单独模式。我想在一场比赛中加入所有过滤器。我怎么能做到?谢谢!
$(document).ready(function (){
jQuery.expr[":"].Contains = jQuery.expr.createPseudo(function(arg) {
return function( elem ) {
return jQuery(elem).text().toUpperCase().indexOf(arg.toUpperCase()) >= 0;
};
});
$("input").keyup(function(){
$(this).change();
});
$("input").change(function(){
var filter = $(this).val().toLowerCase();
if(filter) {
$matches = $('#list_pr, #list_ba').find('a:Contains(' + filter + ')').parent();
$('li', '#list_pr, #list_ba').not($matches).slideUp();
$matches.slideDown();
}else{
$('#list_pr, #list_ba').find("li").slideDown();
}
return false;
});
$("#location").change(function(){
var filter = $(this).val();
if(filter != 'default') {
$matches = $('#list_pr').find("li a[alt*="+filter+"]").parent();
$('li', '#list_pr, #list_ba').not($matches).slideUp();
$matches.slideDown();
}else{
$('#list_pr, #list_ba').find("li").slideDown();
}
return false;
});
$("#category").change(function(){
var filter = $(this).val();
alert(filter);
if(filter != 'default') {
$matches = $('#list_pr').find("li a[alt*="+filter+"]").parent();
$('li', '#list_pr, #list_ba').not($matches).slideUp();
$matches.slideDown();
}else{
$('#list_pr, #list_ba').find("li").slideDown();
}
return false;
});
});