ASP+AJAX做类似google的搜索提示

2016-02-19 20:36 11 1 收藏

想不想get新技能酷炫一下,今天图老师小编就跟大家分享个简单的ASP+AJAX做类似google的搜索提示教程,一起来看看吧!超容易上手~

【 tulaoshi.com - Web开发 】

主要要文件有:

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

Index.html 实现功能,一个文本框,输入内容并实现提示

search.asp 查询功能,让文本框输入的内容在数据库中查询,然后返回给客户端

conn.asp 数据库连接功能,实现与数据库相连 xmlhttp.js AJAX 核心部分,用来把客户端的数据传给服务端,再把服务端的数据返还给客户端.

style.css 样式文件,主要是对google提示框查询到的内容进行样式化处理

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

先看第一个文件style.css


@charset "utf-8";
/* CSS Document */

body
{
font-size:12px;
font-family:Arial, Helvetica, sans-serif;
}

#search_suggest
{
position:absolute;
background:#FFFFFF;
text-align:left;
border:1px #000000 solid;
}

.suggest_link_over
{
background-color:#e8f2fe;
padding:2px 6px;
}
.suggest_link
{
padding:2px 6px;
background-color:#FFFFFF;
}
.none
{
display:none;
}
第二个文件: xmlhttp.js

// JavaScript Documentrt
var xmlHttp = createXmlHttpRequest();
function createXmlHttpRequest()
{
var xmlhttp = null;
try
{
xmlhttp = XMLHttpRequest();
}
catch(e1)
{
try
{
xmlhttp = new ActiveXObject("MSXML2.XMLHTTP");
}
catch(e2)
{

try
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e3)
{
xmlhttp = false;
alert("创建失败!");
}
}
}
return xmlhttp;
}

function change_key()
{
if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
{
var str = document.getElementById("txt_key").value;

xmlHttp.open("get","search.asp?key=" + str ,true);
xmlHttp.onreadystatechange = handSearchRequest; 
xmlHttp.send(null);
}
}

function handSearchRequest()
{
if (xmlHttp.readyState == 4)
{
var div = document.getElementById("search_suggest");
div.innerHTML = "";
var str = xmlHttp.responseText.split("|");

for (var i=0; istr.length; i++)
{
var suggest = ’div onmouseover="javascript:suggestOver(this);" ’;
suggest += ’onmouseout="javascript:suggestOut(this);" ’;
suggest += ’onclick="javascript:setSearch(this.innerHTML);" ’;
suggest += ’class="suggest_link"’ + str[i] + ’/div’;
div.innerHTML += suggest;
}
}
}

function setSearch(div_value)
{
document.getElementById("txt_key").value = div_value;
document.getElementById("search_suggest").className = ’none’;
}
function suggestOver(div_value)
{
div_value.className = ’suggest_link_over’;
}

function suggestOut(div_value)
{
div_value.className = ’suggest_link’;

第三个文件:conn.asp

%
set conn = Server.CreateObject("Adodb.Connection")
connStr = "Provider=SQLOLEDB;Server=.SQLEXPRESS;UID=sa;PWD=sa;Initial catalog=test;"
conn.ConnectionString = connStr
conn.open
%
第四个文件:search.asp

%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%
!-- #include file="conn.asp" --
%key = request.QueryString("key")

if (key "") then
key = replace(key,"","")
key = replace(key,"’","")
key = replace(key,"or","") 
sel_sql = "select [key] from [key] where [key] like ’" & key & "%’"
dim keyword
keyword = ""

set rs = conn.execute (sel_sql)
do while not rs.eof
keyword = keyword & rs(0) & "|"
rs.movenext
loop

response.Write(keyword)
end if
%
最后一个结果文件:index.html

!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
meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
titlegoogle提示  /title
script src="xmlhttp.js" /script
link rel="stylesheet" type="text/css" href="style.css"
/head
body
form id="form1" name="form1" method="post" action=""
input name="txt_key" type="text" id="textarea" autocomplete="off" onkeyup="change_key()"/br/
div id="search_suggest" /div
/form
/body
/html

来源:http://www.tulaoshi.com/n/20160219/1624092.html

延伸阅读
标签: Web开发
     发出异步请求并不意味着只是与您自己的服务器端程序交互。其实也可以与一些公共 API,例如来自 Google 或 Amazon 的 API 进行通信,从而为 Web 应用程序增加您自己的脚本和服务器端程序所不能提供的更多功能。在本文中,Brett McLaughlin 教您如何向公共 API,例如 Google 提供的 API 发出请求并接收其响应。 ...
标签: Web开发
下面是我的一个例子:AJAXDemo.html html head titleAJAX测试!/title scripttype="text/javascript"src="ajaxrequest.js"/script scripttype="text/javascript" varajax=newAJAXRequest(); functionshowHello(){ ajax.get("helloworld.asp",mycallback); } functionmycallback(obj){ alert(unescape(obj.responseText)); } /script /...
标签: flash教程
   在我们构造Google 搜索程序之前我们还需要Google Web APIs Developer's Kit,你可以从http ://www.google.com/apis/download.html下截直接解压缩就可以了。里面已经含了所需要的文件和已经编译好的文件,官方地址是http ://www.google.com/apis。不过实际上对我们有用的只是GoogleSearch.wsdl这个文件,把这个文件和SWF文件放在同...
标签: Web开发
修复了一些细节代码(支持持续按键事件) *项目名称:AJAX实现类Google Suggest效果 *作者:草履虫(也就是蓝色的ecma) *联系:caolvchong@gmail.com *时间:2007-7-7 *工具: DreamWeaver(写ASP),Aptana(写Javascript,HTML和CSS),Emeditor(写这篇文章),Access2003(数据库) *测试平台:Firefox2.0,IE6.0,IE7.0 *演示地址:http://finish.3322.org/sugge...
标签: 浏览器
给IE9添加带搜索建议的Google搜索 IE9 Beta 的发布显然是最近最热门的科技新闻,IE9 也可以像 Chrome 一样直接在地址栏输入搜索关键字进行搜索了,但是搜索引擎必然是 Bing 了,当然我们还是有办法把它改成 Google 的。 如上图,点击 Bing 搜索建议右下角的 Add。 你就会来到 IE Add-ons Gallery,在角落里面找到 Google ...

经验教程

440

收藏

23
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部