jQuery多條件篩選如何實現
本文實例講述了jquery實現多條件篩選特效。分享給大家供大家參考。具體如下:
我們在電商平臺購買商品時,在商品列表頁根據品牌、款式、價格范圍等條件進行篩選查詢,當點擊某個條件時,在頁面上會顯示用戶所選擇的條件集合,并且將對應的符合條件的商品信息展示出來。那么今天我們使用jQuery來實現這一前端效果。
運行效果圖:

HTML
首先,我們將查詢條件分類,在頁面中布置條件容器li.select-list和已選擇的條件容器div.select-result。
<ul class="select">
<li class="select-list">
<dl id="select1">
<dt>上裝:</dt>
<dd class="select-all selected"><a href="#">全部</a></dd>
<dd><a href="#">針織衫</a></dd>
<dd><a href="#">毛呢外套</a></dd>
<dd><a href="#">T恤</a></dd>
<dd><a href="#">羽絨服</a></dd>
<dd><a href="#">棉衣</a></dd>
<dd><a href="#">衛(wèi)衣</a></dd>
<dd><a href="#">風衣</a></dd>
</dl>
</li>
<li class="select-list">
<dl id="select2">
<dt>褲裝:</dt>
<dd class="select-all selected"><a href="#">全部</a></dd>
<dd><a href="#">牛仔褲</a></dd>
<dd><a href="#">小腳/鉛筆褲</a></dd>
<dd><a href="#">休閑褲</a></dd>
<dd><a href="#">打底褲</a></dd>
<dd><a href="#">哈倫褲</a></dd>
</dl>
</li>
<li class="select-result">
<dl>
<dt>已選條件:</dt>
<dd class="select-no">暫時沒有選擇過濾條件</dd>
</dl>
</li>
</ul>
布置好內容后,給頁面內容加上css樣式以及加載相關js。
<link rel="stylesheet" type="text/css" href="css/style.css"> <script type="text/javascript" src="js/jquery.js"></script> <script type="text/javascript" src="js/script.js"></script>
jQuery
當用戶點擊任意條件時,標記當前選中狀態(tài),相鄰條件取消選中狀態(tài),并且更新已選條件容器內容,請看代碼:
$(document).ready(function() {
$("#select1 dd").click(function() {
$(this).addClass("selected").siblings().removeClass("selected");
if ($(this).hasClass("select-all")) {
$("#selectA").remove();
} else {
var copyThisA = $(this).clone();
if ($("#selectA").length > 0) {
$("#selectA a").html($(this).text());
} else {
$(".select-result dl").append(copyThisA.attr("id", "selectA"));
}
}
});
$("#select2 dd").click(function() {
$(this).addClass("selected").siblings().removeClass("selected");
if ($(this).hasClass("select-all")) {
$("#selectB").remove();
} else {
var copyThisB = $(this).clone();
if ($("#selectB").length > 0) {
$("#selectB a").html($(this).text());
} else {
$(".select-result dl").append(copyThisB.attr("id", "selectB"));
}
}
});
$("#selectA").live("click",
function() {
$(this).remove();
$("#select1 .select-all").addClass("selected").siblings().removeClass("selected");
});
$("#selectB").live("click",
function() {
$(this).remove();
$("#select2 .select-all").addClass("selected").siblings().removeClass("selected");
});
$(".select dd").live("click",
function() {
if ($(".select-result dd").length > 1) {
$(".select-no").hide();
} else {
$(".select-no").show();
}
});
});
實際應用中,我們要結合后端程序,實現帥選條件時,頁面響應的內容也會變化,有興趣的同學可以嘗試下。
以上就是本文的全部內容,告訴大家js如何實現多條件篩選功能,希望對大家的學習有所幫助。
相關文章
jquery.gridrotator實現響應式圖片展示畫廊效果
本教程將教大家制作一個jQuery響應式圖片展示畫廊效果,所有圖片以網格的形式排列,然后定時隨機翻轉其中某些格子用來切換圖片。這種效果可以用來當做背景或裝飾放在我們的網站上。2015-06-06

