国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

asp.net和ajax實現智能搜索功能代碼

2024-07-10 13:26:33
字體:
來源:轉載
供稿:網友
第一步,先做好搜索頁面

復制代碼 代碼如下:


<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>
<!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 language=javascript src=JScript.js type="text/javascript" ></script>
<style>
#result{
position:absolute;
width:150px;
height:auto;
margin:0px;
z-index:1;
font-size:14px;
border: 1px dashed #ccccc4;
display:none;
}
#result .firstHang{
background-color:#DDDDDD;
height:15px;
padding-top:5px;
}
#result b{
width:61px;
float:left;
}
#result nobr{
width:61px;
float:left;
}
#result .otherHang{
background-color:#FFFFFF;
height:15px;
padding-top:5px;
}
#content{
margin-left:0px;
padding-left:0px;
}
</style>
</head>
<body>
<form runat="server">
<div align=center>
<input onkeyUp="startRequest(this.value)" /> <!-- 輸入框 -->
</div>
<div> <!-- 下拉搜索框 -->
<div>
<b>搜索</b><b>標題</b>
</div>
<div></div>
</div>
</form>
</body>
</html>
<script language="javascript">
var obj=document.getElementById("result");
var rela=document.getElementById("searchTxt");
SetDivLocation(obj,rela);
function SetDivLocation(obj,rela) //設置下拉搜索框與輸入框的相對位置
{
var x,y;
var oRect=rela.getBoundingClientRect(); //獲得輸入框的位置
x=oRect.left;
y=oRect.top;
obj.style.left=x+"px"; //這里要加上px,否則在fiexfox就會失效
obj.style.top=y+rela.offsetHeight+"px";
}
</script>


第二步,添加返回搜索結果的頁面,該頁面由于不用在客戶端顯示,所以就不用做界面。

復制代碼 代碼如下:


Imports System.Text
Partial Class Search
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim searchContent As String = Request("content").ToString  '獲取搜索內容
Dim searchResult As New StringBuilder
If IsNumeric(searchContent) Then '判斷是否為數字,輸入不同的內容
searchResult.Append("<div><nobr>11</nobr><nobr>11</nobr></div>")
searchResult.Append("<div><nobr>22</nobr><nobr>22</nobr></div>")
searchResult.Append("<div><nobr>22</nobr><nobr>22</nobr></div>")
Else
searchResult.Append("<div><nobr>aa</nobr><nobr>aa</nobr></div>")
searchResult.Append("<div><nobr>bb</nobr><nobr>bb</nobr></div>")
searchResult.Append("<div><nobr>cc</nobr><nobr>cc</nobr></div>")
End If
Response.Write(searchResult.ToString) '向客戶端發送結果
Response.End() '關閉客戶端輸出流
End Sub
End Class


第三步就是最關鍵的一步了

復制代碼 代碼如下:


// JScript 文件
var xmlHttp;
function cratexmlHttpRequest()
{
//判斷是否為IE瀏覽器
if(window.ActiveXObject)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
else if(window.XMLHttpRequest)
{
xmlHttp=new window.XMLHttpRequest();
}
}
//啟動對頁面的請求
function startRequest(content)
{
cratexmlHttpRequest();
//設置請求狀態變化調用的方法
xmlHttp.onreadystatechange=handleState;
//建立對服務器的調用
var url="Search.aspx?content="+escape(content); '發送頁面url
xmlHttp.open("get",url,true);
xmlHttp.send(null);
}
function handleState()
{
try{
if(xmlHttp.readyState==4)
{
if(xmlHttp.status==200)
{
var data=xmlHttp.responseText; '得到搜索結果
var result=document.getElementById("result");
var stockListDiv=document.getElementById("stockListDiv");
if(data=="")            '如果搜索結果為空,不顯示下拉框
{
result.style.display="none";
stockListDiv.innerHTML="";
}
else
{
stockListDiv.innerHTML=data;   '顯示下拉框
result.style.display="block";
}
}
}
}
catch(error)
{error.message}
}


最后實現的效果如下:

asp.net和ajax實現智能搜索功能代碼

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 青神县| 叙永县| 临洮县| 资源县| 南开区| 肃宁县| 隆德县| 白玉县| 阿城市| 保定市| 漳浦县| 石渠县| 溆浦县| 手游| 连云港市| 加查县| 庆阳市| 靖边县| 德江县| 潼南县| 嘉鱼县| 米脂县| 盘山县| 抚顺市| 洛南县| 镇赉县| 会同县| 咸丰县| 河西区| 紫金县| 惠水县| 邯郸县| 松原市| 凤台县| 和静县| 龙胜| 墨玉县| 牡丹江市| 桐梓县| 称多县| 河北区|