jQuery簡(jiǎn)單實(shí)現(xiàn)的HTML頁(yè)面文本框模糊匹配查詢功能完整示例
本文實(shí)例講述了jQuery簡(jiǎn)單實(shí)現(xiàn)的HTML頁(yè)面文本框模糊匹配查詢功能。分享給大家供大家參考,具體如下:
項(xiàng)目中需要用到此功能,使用過(guò)EasyUI中的Combobox,網(wǎng)上也搜過(guò)相應(yīng)的解決辦法,對(duì)于我的項(xiàng)目來(lái)說(shuō)都不太合適,因?yàn)槲疫€是喜歡比較純粹的東西,就自己動(dòng)手寫(xiě)了一個(gè),比較簡(jiǎn)單,但還算能用,我的項(xiàng)目中也已經(jīng)使用上了,做了個(gè)小demo作為記錄,有需要的自己復(fù)制代碼改一改就好了。
使用在線HTML/css/JavaScript運(yùn)行工具:http://tools.jb51.net/code/HtmlJsRun 運(yùn)行代碼,可看到如下效果展示圖:
接下來(lái)是代碼,純html+css+jquery的:
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script> <title>www.dbjr.com.cn jQuery模糊匹配查詢</title> <style type="text/css"> #div_main { margin: 0 auto; width: 300px; height: 400px; border: 1px solid black; margin-top: 50px; } #div_txt { position: relative; width: 200px; margin: 0 auto; margin-top: 40px; } #txt1 { width: 99%; } #div_items { position: relative; width: 100%; height: 200px; border: 1px solid #66afe9; border-top: 0px; overflow: auto; display: none; } .div_item { width: 100%; height: 20px; margin-top: 1px; font-size: 13px; line-height: 20px; } </style> </head> <body> <div id="div_main"> <!--表單的autocomplete="off"屬性設(shè)置可以阻止瀏覽器默認(rèn)的提示框--> <form autocomplete="off"> <div id="div_txt"> <!--要模糊匹配的文本框--> <input type="text" id="txt1" /> <!--模糊匹配窗口--> <div id="div_items"> <div class="div_item">周杰倫</div> <div class="div_item">周杰</div> <div class="div_item">林俊杰</div> <div class="div_item">林宥嘉</div> <div class="div_item">林妙可</div> <div class="div_item">唐嫣</div> <div class="div_item">唐家三少</div> <div class="div_item">唐朝盛世</div> <div class="div_item">奧迪A4L</div> <div class="div_item">奧迪A6L</div> <div class="div_item">奧迪A8L</div> <div class="div_item">奧迪R8</div> <div class="div_item">寶馬GT</div> </div> </div> </form> </div> </body> </html> <script type="text/javascript"> //彈出列表框 $("#txt1").click(function () { $("#div_items").css('display', 'block'); return false; }); //隱藏列表框 $("body").click(function () { $("#div_items").css('display', 'none'); }); //移入移出效果 $(".div_item").hover(function () { $(this).css('background-color', '#1C86EE').css('color', 'white'); }, function () { $(this).css('background-color', 'white').css('color', 'black'); }); //文本框輸入 $("#txt1").keyup(function () { $("#div_items").css('display', 'block');//只要輸入就顯示列表框 if ($("#txt1").val().length <= 0) { $(".div_item").css('display', 'block');//如果什么都沒(méi)填,跳出,保持全部顯示狀態(tài) return; } $(".div_item").css('display', 'none');//如果填了,先將所有的選項(xiàng)隱藏 for (var i = 0; i < $(".div_item").length; i++) { //模糊匹配,將所有匹配項(xiàng)顯示 if ($(".div_item").eq(i).text().substr(0, $("#txt1").val().length) == $("#txt1").val()) { $(".div_item").eq(i).css('display', 'block'); } } }); //項(xiàng)點(diǎn)擊 $(".div_item").click(function () { $("#txt1").val($(this).text()); }); </script>
更多關(guān)于jQuery相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《jQuery表格(table)操作技巧匯總》、《jQuery切換特效與技巧總結(jié)》、《jQuery擴(kuò)展技巧總結(jié)》、《jQuery常用插件及用法總結(jié)》、《jQuery拖拽特效與技巧總結(jié)》、《jquery中Ajax用法總結(jié)》、《jQuery常見(jiàn)經(jīng)典特效匯總》、《jQuery動(dòng)畫(huà)與特效用法總結(jié)》及《jquery選擇器用法總結(jié)》
希望本文所述對(duì)大家jQuery程序設(shè)計(jì)有所幫助。
相關(guān)文章
jquery獲取tr中控件值并操作tr實(shí)現(xiàn)思路
本教程將詳細(xì)介紹下jquery如何獲取tr中控件值并操作tr,代碼很精簡(jiǎn),感興趣的各位可以參考下哈,希望可以幫助到你們2013-03-03淺談jQuery中的$.extend方法來(lái)擴(kuò)展JSON對(duì)象
下面小編就為大家?guī)?lái)一篇淺談jQuery中的$.extend方法來(lái)擴(kuò)展JSON對(duì)象。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02Jquery replace 字符替換實(shí)現(xiàn)代碼
Jquery replace 字符替換實(shí)現(xiàn)代碼,需要的朋友可以參考下。2010-12-12jQuery實(shí)現(xiàn)可關(guān)閉固定于底(頂)部的工具條菜單效果
這篇文章主要介紹了jQuery實(shí)現(xiàn)可關(guān)閉固定于底(頂)部的工具條菜單效果,可實(shí)現(xiàn)固定位置顯示及響應(yīng)鼠標(biāo)點(diǎn)擊展開(kāi)與關(guān)閉的功能,涉及jQuery響應(yīng)鼠標(biāo)事件動(dòng)態(tài)操作頁(yè)面元素樣式屬性的相關(guān)技巧,需要的朋友可以參考下2015-11-11基于jquery實(shí)現(xiàn)后臺(tái)左側(cè)菜單點(diǎn)擊上下滑動(dòng)顯示
一個(gè)左側(cè)菜單點(diǎn)擊是可以上下滑動(dòng),簡(jiǎn)潔時(shí)尚,復(fù)制即可使用,感興趣的朋友可以參考下哈,希望對(duì)你有所幫助2013-04-04從零開(kāi)始學(xué)習(xí)jQuery (三) 管理jQuery包裝集
在使用jQuery選擇器獲取到j(luò)Query包裝集后, 我們需要對(duì)其進(jìn)行操作. 本章首先講解如何動(dòng)態(tài)的創(chuàng)建元素, 接著學(xué)習(xí)如何管理jQuery包裝集, 比如添加,刪除,切片等.2011-02-02