我想用某些筛选器筛选表。有些是简单的选择,有些则是多重选择。对于简单的,没关系,但不是倍数。与多选择jQuery筛选器表
我想遵循这一逻辑:
- 通过包含所述过滤器(
filtre_transports
) - 通过包含的值(一个或多个)所述阵列传递数组传递(
ligne_transports
) - 如果1.的元素不在中2.所以不能显示行(
transports_matches = false
)
我做了这个代码:
// Pass through each line of the table
jQuery('#agents_liste tbody tr').not('.vide').each(function() {
var transports_matches = true;
// ligne_transports is an array contains values to compare with the filter
var ligne_transports = jQuery(this).children('td').eq(2).text().split('###');
// filtre_transports is an array contains the selected val of a multi select
jQuery(filtre_transports).each(function() {
var filtre = jQuery(this);
var filtreOk = false;
jQuery(ligne_transports).each(function() {
if (filtre == jQuery(this)) {
filtreOk = true;
return false;
}
});
if (!filtreOk) {
transports_matches = false;
return false;
}
});
});
问题:当我们有选择的过滤器,结果transports_matches
永远是假的。
顺便说一句,我看到this post答案是使用类,但有没有一种方式吗?
编辑:你可以看到JSFiddle here。
感谢
使用类绝对不是必需的。你可以把它张贴在jsfiddle上,这样我们可以看看一个(不)工作的例子吗? – wroniasty
您现在可以看到JSFiddle,感谢您的评论! – Val