jQuery簡單實現(xiàn)的HTML頁面文本框模糊匹配查詢功能完整示例
本文實例講述了jQuery簡單實現(xiàn)的HTML頁面文本框模糊匹配查詢功能。分享給大家供大家參考,具體如下:
項目中需要用到此功能,使用過EasyUI中的Combobox,網(wǎng)上也搜過相應(yīng)的解決辦法,對于我的項目來說都不太合適,因為我還是喜歡比較純粹的東西,就自己動手寫了一個,比較簡單,但還算能用,我的項目中也已經(jīng)使用上了,做了個小demo作為記錄,有需要的自己復(fù)制代碼改一改就好了。
使用在線HTML/css/JavaScript運行工具:http://tools.jb51.net/code/HtmlJsRun 運行代碼,可看到如下效果展示圖:

接下來是代碼,純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>chabaoo.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');//如果什么都沒填,跳出,保持全部顯示狀態(tài)
return;
}
$(".div_item").css('display', 'none');//如果填了,先將所有的選項隱藏
for (var i = 0; i < $(".div_item").length; i++) {
//模糊匹配,將所有匹配項顯示
if ($(".div_item").eq(i).text().substr(0, $("#txt1").val().length) == $("#txt1").val()) {
$(".div_item").eq(i).css('display', 'block');
}
}
});
//項點擊
$(".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常見經(jīng)典特效匯總》、《jQuery動畫與特效用法總結(jié)》及《jquery選擇器用法總結(jié)》
希望本文所述對大家jQuery程序設(shè)計有所幫助。
相關(guān)文章
淺談jQuery中的$.extend方法來擴(kuò)展JSON對象
下面小編就為大家?guī)硪黄獪\談jQuery中的$.extend方法來擴(kuò)展JSON對象。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-02-02
jQuery實現(xiàn)可關(guān)閉固定于底(頂)部的工具條菜單效果
這篇文章主要介紹了jQuery實現(xiàn)可關(guān)閉固定于底(頂)部的工具條菜單效果,可實現(xiàn)固定位置顯示及響應(yīng)鼠標(biāo)點擊展開與關(guān)閉的功能,涉及jQuery響應(yīng)鼠標(biāo)事件動態(tài)操作頁面元素樣式屬性的相關(guān)技巧,需要的朋友可以參考下2015-11-11
基于jquery實現(xiàn)后臺左側(cè)菜單點擊上下滑動顯示
一個左側(cè)菜單點擊是可以上下滑動,簡潔時尚,復(fù)制即可使用,感興趣的朋友可以參考下哈,希望對你有所幫助2013-04-04
從零開始學(xué)習(xí)jQuery (三) 管理jQuery包裝集
在使用jQuery選擇器獲取到j(luò)Query包裝集后, 我們需要對其進(jìn)行操作. 本章首先講解如何動態(tài)的創(chuàng)建元素, 接著學(xué)習(xí)如何管理jQuery包裝集, 比如添加,刪除,切片等.2011-02-02

