Ajax實(shí)現(xiàn)智能提示搜索功能
更新時間:2016年08月01日 11:49:17 作者:wangwangwangMax
這篇文章主要為大家詳細(xì)介紹了Ajax實(shí)現(xiàn)智能提示搜索功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
一、效果圖:

二、實(shí)現(xiàn)過程:
思路:


三、部分代碼:
html:
<div id="searchbox"> <div><input type="text" id="txtTitle" /></div> <div id="btnSelect"><a href="javascript:;">Google</a></div> </div> <div id="dtitles"></div>
css代碼:
* {
padding:0px;
margin:0px;
}
#searchbox {
margin-top:10px;
height:37px;
width:550px;
}
#searchbox div {
float:left;
}
#txtTitle {
height:35px;
width:440px;
line-height:35px;
border:solid 1px #4791FF;
}
#btnSelect a{
width:100px;
height:37px;
background:#167ED9;
display:block;
line-height:37px;
color:#ffffff;
text-align:center;
}
a:link {
text-decoration:none;
}
a:hover {
cursor:pointer;
}
#dtitles {
width:540px;
height:90px;
border:solid 1px #CCCCCC;
display:none;
font-size:12px;
}
.li1 {
background:#F0F0F0;
}
js代碼:
$(function ()
{ //1.頁面加載之后,找到文本框的內(nèi)容對它觸發(fā)一個事件 $("#txtTitle").keyup(function () { //2.獲取到文本框的內(nèi)容,注意去空格 var title = $.trim($("#txtTitle").val()); //3.獲取到輸入的內(nèi)容之后,就要通過ajax傳給后臺 $.post("/Handler3.ashx", { "title": title }, function (data) { if (title == "") { $("#dtitles").hide(); } else { //顯示展示div,把它清空 $("#dtitles").show().html(""); if (data == "") { $("#dtitles").text("沒有相關(guān)數(shù)據(jù)!"); } else { $("#dtitles").append(data); //4.鼠標(biāo)移上去之后,加一個背景 $("li").hover(function () { $(this).addClass("li1"); }, function () { $(this).removeClass("li1"); }); } } }); }); });
ajax:
public void ProcessRequest(HttpContext context)
{
//1.提交過來之后,我們要接收
string title=context.Request.Form["title"];
//2.得到一個sql語句
string strsql = string.Format("select top 5 title from RNews where Title like '%{0}%' ",title);
//3.那得到sql怎么去做處理?
DataTable dt = SqlHelper.ExecuteDataSetText(strsql,null).Tables[0];
//4.我們最后要返回的是一個列表,要做字符串拼湊
StringBuilder sb = new StringBuilder();
//4.1判斷得到的sql結(jié)果里面是否有數(shù)據(jù)
if (dt.Rows.Count > 0)
{
//4.1.1
sb.Append("<ul>");
for (int i = 0; i < dt.Rows.Count; i++)
{
sb.Append(string.Format("<li>{0}</li>", dt.Rows[i][0].ToString()));
}
sb.Append("</ul>");
}
context.Response.Write(sb.ToString());
}
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
相關(guān)文章
使用jquery 的ajax調(diào)用總是錯誤親測的解決方法
使用jquery 的ajax功能調(diào)用一個頁面,卻發(fā)現(xiàn)總是出現(xiàn)錯誤,經(jīng)過這么多測試終于正常了,尤其是 dataType: 'json',看來jquery有很嚴(yán)格的驗(yàn)證機(jī)制2013-07-07
webform使用ajax訪問后端接口的兩種方法小結(jié)
這篇文章主要介紹了webform使用ajax訪問后端接口的兩種方法小結(jié),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-11-11
ajax jquery校驗(yàn)用戶是否已經(jīng)注冊演示代碼
用戶是否已經(jīng)注冊的判斷方法有很多,在本文將為大家詳細(xì)介紹下如何使用ajax jquery來實(shí)現(xiàn),感興趣的朋友可以參考下2013-10-10

