谁能看看我的小提琴,让我知道我哪里出错了?我只想检查表中的第二列,如果它包含所选菜单中的任何单词,它应该显示该行。
问问题
372 次
1 回答
0
您需要将 if 语句更改为:
if (check && check.indexOf(letter) > 0) {
$(this).parent().show();
}
仅当所选值不喜欢(== 而不是 >)时,您的条件才成立。此外,要在 each() 循环中获取父对象,您始终需要引用当前对象。
在您的网站中,您需要将代码包装在$( document ).ready()
事件中。尝试这个:
jQuery( document ).ready( function() {
jQuery('select.filterMe').change( function(e) {
var letter = jQuery(this).val();
if (letter === 'ALL') {
jQuery('tr').show ();
}
else {
jQuery('tr').each( function(rowIdx,tr) {
jQuery(this).hide().find('td').each( function(idx, td) {
if( idx === 0 || idx === 1) {
var check = jQuery(this).text();
if (check && check.indexOf(letter) > 0) {
jQuery(this).parent().show();
}
}
});
});
}
});
});
于 2012-04-24T04:15:31.307 回答