我有一個頁面上的鏈接列表和一組複選框應該過濾鏈接,以便只有那些具有特定條件的鏈接將被激活。我這樣做的初步嘗試涉及創建一個活動的所有過濾器選項的數組,並運行.filter(Array)以使這些活動處於活動狀態,並使用.not(Array)禁用其他鏈接。使用jquery過濾器作爲過濾頁面上的鏈接的方式
問題是,如果選擇了多個過濾器選項,則與任一過濾器選項匹配的任何鏈接都將處於活動狀態。實際上,我想要的只是匹配所有過濾器選項的鏈接處於活動狀態。
這裏是我的精簡版在jsFiddle
var filterAll = ["filter-F_0", "filter-F_1", "filter-F_2", "filter-F_3", "filter-F_4", "filter-P_0", "filter-P_1", "filter-P_2", "filter-P_3", ]
var filterActive = [];
function filterApps(){
if(filterActive.length == 0)
{
filterReset();
return;
}
var arrActive = $.map(filterActive, function (val) {
return '[' + val + ']'
}).join(",")
addToLog("arr = " + arrActive);
$(".appLink").filter(arrActive).css(activeAppCSS).addClass("active").removeClass("disable");
$(".appLink").not(arrActive).css(disabledAPPCSS).addClass("disable").removeClass("active");}
_「代替這是這個標準,只有符合這些標準的標準纔會被激活。「_你能更具體一些嗎? – undefined
當前如果您選擇多個過濾器選項,則與任一過濾器選項相匹配的任何內容都將處於活動狀態。實際上,我想要的只是與兩個篩選器選項都匹配的鏈接處於活動狀態。 *更有意義*? – Bardsworth
我編輯我的帖子要清楚一點。 (我希望) – Bardsworth