我有一個人員及其活動的列表。由兩個不同的類別篩選
我想讓他們過濾兩個類別,名稱和活動。 我做了兩個選擇,並填寫了一個人的名字和一個與他們的活動。
<select class="filter people">
<option value="0">ALL PEOPLE</option
<option value="1">John</option>
<option value="2">Mary</option>
<option value="3">Dan</option>
etc.
</select>
<select class="filter activities">
<option value="0">ALL ACTIVITIES</option
<option value="1">Football</option>
<option value="2">Basketball</option>
<option value="3">Painting</option>
<option value="4">Racing</option>
etc.
</select>
列表結構的示例。
<div id="wrap">
<div class="item people3 activity2">Dan:Basketball</div>
<div class="item people3 activity1">Dan:Football</div>
<div class="item people1 activity2">John:Basketball</div>
</div>
我想要的是顯示包含所選過濾器的所有項目。
例如,在分類下拉列表中選擇僅籃球,它會隱藏所有項目,除了Dan:Basketball
和John:Basketball
,在類別中選擇籃球和JOHN下的人,它會隱藏每一個項目除了John:Basketball
。價值的項目,顯示全部來自所選過濾器的項目。
這是我到目前爲止嘗試過的。它只適用於一個過濾器,現在我想將它與(n)
過濾器結合使用,在我的情況下是兩個人員和活動。
// $('.filter').change(function(){
$('.people').change(function(){
if($(this).val()!=0) {
if(current != '') {
$('div.item').not('.'+current).show();
}
current = $(this).val();
$('div.item').not('.'+current).hide();
} else $('.item').show();
});
工程太棒了!我喜歡添加額外n個選擇過濾器的選項。 :) – 2014-10-20 08:25:51