js文本框輸入內(nèi)容智能提示效果
本文實(shí)例講述了js文本框輸入內(nèi)容智能提示效果代碼。分享給大家供大家參考。具體如下:
運(yùn)行效果截圖如下:

大體思路:
1.監(jiān)聽文本框事件。這里是用的keyup事件。大家可以嘗試用onchange事件。不過感覺keyup事件的效果要好一點(diǎn)。
2.根據(jù)輸入內(nèi)容通過ajax異步的方式去訪問后臺數(shù)據(jù)。
3.遍歷返回?cái)?shù)據(jù)將數(shù)據(jù)添加到顯示區(qū)域。
4.在添加數(shù)據(jù)的同時給每一條數(shù)據(jù)加上一些效果,點(diǎn)擊其中一條將數(shù)據(jù)填到文本框,并且提示內(nèi)容消失。
5.后臺數(shù)據(jù)應(yīng)該拼接成json格式。
具體代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>自動提示</title>
<script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script>
<script type="text/ecmascript">
function txtchange() {
var nnmae = $("#intxt").val();
$.ajax({
type: "post",
url: "ashx/AutoNote.ashx",
data: { name: nnmae },
dataType: "json",
success: function (data) {
$("#tbcontent").html(""); //刪除原有數(shù)據(jù)
if (data != "null") {
for (var i = 0; i < $(data).length; i++) {
$("#tbcontent").append('<div class="item" onclick="mousedown(this)">' + data[i].name + '</div>');
}
$("#tbcontent").slideDown();
}
}
});
}
//選擇其中的提示內(nèi)容
function mousedown(object) {
$("#intxt").val($(object).text());
$("#tbcontent").fadeOut();
}
//文檔框失去焦點(diǎn),隱藏提示內(nèi)容
function lost() {
$("#tbcontent").fadeOut();
}
</script>
<style type="text/css">
.item:hover
{
background-color: Gray;
cursor:pointer;
}
.show
{
width: 200px;
z-index: 10;
display: block;
}
.hidden
{
width: 200px;
z-index: 10;
display: none;
border:1px solid rgb(80,160,91);
border-top:none;
}
table tr td
{
margin:none;
padding:none;
border:none;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<div style="width: 210px; margin-left:auto; margin-right:auto">
<table>
<tr>
<td>
<input type="text" style="width: 200px;" id="intxt" onkeyup="txtchange()" onblur="lost()"/>
</td>
</tr>
<tr>
<td>
<div id="tbcontent" class="hidden">
</div>
</td>
</tr>
</table>
</div>
</form>
</body>
</html>
js文本框輸入內(nèi)容智能提示效果,對于我們輸入信息進(jìn)行搜索很有實(shí)用價值,希望這篇文章對大家學(xué)習(xí)javascript 程序設(shè)計(jì)有所幫助。
相關(guān)文章
react-router-dom?v6?通過outlet實(shí)現(xiàn)keepAlive?功能的實(shí)現(xiàn)
本文主要介紹了react-router-dom?v6?通過outlet實(shí)現(xiàn)keepAlive功能,文中根據(jù)實(shí)例編碼詳細(xì)介紹的十分詳盡,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-03-03
JavaScript阻止事件冒泡和默認(rèn)行為的方法舉例
JavaScript事件的默認(rèn)行為指瀏覽器自動執(zhí)行的操作,如鏈接跳轉(zhuǎn)或表單提交,阻止這些行為可以使用event.preventDefault()、return?false或event.returnValue屬性,event.stopPropagation()用于阻止事件傳播,不直接阻止默認(rèn)行為,需要的朋友可以參考下2024-10-10
js實(shí)現(xiàn)跟隨鼠標(biāo)移動的小球
這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)跟隨鼠標(biāo)移動的小球,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-08-08
js將當(dāng)前時間格式化為 年-月-日 時:分:秒的實(shí)現(xiàn)代碼
這篇文章主要介紹了js將當(dāng)前時間格式化為 年-月-日 時:分:秒主要是使用js的Date()對象,將系統(tǒng)當(dāng)前時間格式化為年-月-日 時:分:秒,需要的朋友可以參考下2018-01-01
JavaScript動態(tài)檢驗(yàn)密碼強(qiáng)度的實(shí)現(xiàn)方法
平時我們會在某些網(wǎng)站的注冊頁面或者更改密碼的頁面發(fā)現(xiàn)當(dāng)我們輸入密碼時,會有一個類似于進(jìn)度條的長條進(jìn)行提示用戶輸入的密碼強(qiáng)度。那么這種效果怎么實(shí)現(xiàn)的呢?下面小編給大家介紹下js動態(tài)檢驗(yàn)密碼強(qiáng)度的實(shí)現(xiàn)方法,一起看看吧2016-11-11

