jQuery實現(xiàn)模糊查詢的方法分析
本文實例講述了jQuery實現(xiàn)模糊查詢的方法。分享給大家供大家參考,具體如下:
需求:list列表內(nèi)容很多,用戶需要找出列表內(nèi)容中的某些條目,只有當(dāng)與用戶輸入值匹配的條目才顯示出來。(后臺無分頁,直接異步接口返回數(shù)據(jù)添加形成的內(nèi)容列表)
雖然可以通過傳參再調(diào)用查詢出來,但這里主要記錄的是前端處理進行模糊查詢而無需再次調(diào)用接口的實現(xiàn)方法。
html部分:
<div class="search-form"> <input type="text" placeholder="請輸入關(guān)鍵詞"> <span class="icon-clear"></span> </div> <div class="content"> <div class="title row no-gutter"> <div class="col-20">列表一</div> <div class="col-20">列表二</div> <div class="col-20">列表三</div> <div class="col-20">列表四</div> <div class="col-20">列表五</div> </div> <div class="list-content"> <ul> <li> <div class="code">00001</div> <div class="name">內(nèi)容1</div> <div>內(nèi)容2</div> <div>內(nèi)容3</div> <div>內(nèi)容4</div> </li> <li>……</li> </ul> </div> </div>
js部分:
queryList: function(){ $(".search-input").on("input propertychange", function() { var queryStr = $.trim($(".search-input").val()); if(queryStr === ''){ $(".list-content li").show(); }else{ // 以下是匹配某些列的內(nèi)容,如果是匹配全部列的話就把find()和.parent()去掉即可 $(".list-content li").hide().find(".code, .name").filter(":contains('"+queryStr+"')").parent("li").show(); //$(".list-content").refresh(); //重新刷新列表把隱藏的dom結(jié)構(gòu)去掉。 } }); }
分析:以上即實現(xiàn)了前端js的模糊查詢功能啦,哈哈。代碼中監(jiān)聽事件中多加了input,據(jù)說是為兼容iOS的,具體沒測試,有哪位大神測試了可以告知一聲哈,謝謝了。
還有個問題就是,以上實現(xiàn)方法,當(dāng)列表內(nèi)容多大幾千條數(shù)目或者更多時,表單輸入時會出現(xiàn)卡頓的情況,因為要通過js操作大量的DOM結(jié)構(gòu)?。[藏或顯示),PC上或許情況還沒有那么嚴(yán)重,在手機上測試時那真的是“怎一個卡字了得”,如果哪位大神有更好的法子,還望加以完善!
更多關(guān)于jQuery相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《jQuery表格(table)操作技巧匯總》、《jQuery切換特效與技巧總結(jié)》、《jQuery擴展技巧總結(jié)》、《jQuery常用插件及用法總結(jié)》、《jQuery拖拽特效與技巧總結(jié)》、《jquery中Ajax用法總結(jié)》、《jQuery常見經(jīng)典特效匯總》、《jQuery動畫與特效用法總結(jié)》及《jquery選擇器用法總結(jié)》
希望本文所述對大家jQuery程序設(shè)計有所幫助。
- jQuery zTree搜索-關(guān)鍵字查詢 遞歸無限層功能實現(xiàn)代碼
- jQuery插件select2利用ajax高效查詢大數(shù)據(jù)列表(可搜索、可分頁)
- 基于jquery實現(xiàn)的類似百度搜索的輸入框自動完成功能
- 基于jquery的仿百度搜索框效果代碼
- 基于jQuery實現(xiàn)搜索關(guān)鍵字自動匹配功能
- Jquery實現(xiàn)搜索框提示功能示例代碼
- 基于jQuery實現(xiàn)頁面搜索功能
- jQuery+Ajax實現(xiàn)限制查詢間隔的方法
- 基于jquery的表格排序
- jQuery利用sort對DOM元素進行排序操作
- jQuery實現(xiàn)條件搜索查詢、實時取值及升降序排序的方法分析
相關(guān)文章
jQuery on()綁定動態(tài)元素出現(xiàn)的問題小結(jié)
jQuery on()方法是官方推薦的綁定事件的一個方法。使用 on() 方法可以給將來動態(tài)創(chuàng)建的動態(tài)元素綁定指定的事件,通過本文給大家介紹jQuery on()綁定動態(tài)元素出現(xiàn)的問題小結(jié),需要的朋友參考下2016-02-02利用jquery正則表達式在頁面驗證url網(wǎng)址輸入是否正確
這篇文章主要介紹了關(guān)于利用jquery正則表達式在頁面驗證url網(wǎng)址輸入是否正確的相關(guān)資料,文中給出了完整的示例代碼,對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。2017-04-04jQuery實現(xiàn)的縱向下拉菜單實例詳解【附demo源碼下載】
這篇文章主要介紹了jQuery實現(xiàn)的縱向下拉菜單,結(jié)合實例形式分析了jQuery動態(tài)操作頁面元素實現(xiàn)縱向下拉菜單的步驟與相關(guān)實現(xiàn)技巧,需要的朋友可以參考下2016-07-07jQuery中調(diào)用WebService方法小結(jié)
以前在寫ajax請求時,總是喜歡使用jQuery+ashx的方式進行調(diào)用,今天采取jQuery+WebService的方法來做ajax請求,發(fā)現(xiàn)這種方式比使用ashx的方式要更方便。2011-03-03jQuery中的Deferred和promise 的區(qū)別
這篇文章主要介紹了jQuery中的Deferred和promise 的區(qū)別的相關(guān)資料,需要的朋友可以參考下2016-04-04淺析JQuery UI Dialog的樣式設(shè)置問題
本篇文章主要是對JQuery中UI Dialog的樣式設(shè)置問題進行了詳細(xì)的分析介紹,需要的朋友可以過來參考下,希望對大家有所幫助2013-12-12