
asp搜索功能,输入关键字就能显示结果,不用提交,在线等
希望ASP高手能帮一下,就是说ASP一个表单搜索,省去了提交功能,只是在文本框中输入关键字,下面就能即刻显示数据库要搜索的相关字段。在线等,高分!能给源码!adfasdf...
希望ASP高手能帮一下,就是说ASP一个表单搜索,省去了提交功能,
只是在文本框中输入关键字,下面就能即刻显示数据库要搜索的相关字段。
在线等,高分!
能给源码!
adfasdf.asp页中文显示正常
可是JS调出来之后就是乱码
加上后还是乱码,能不能让这些搜索出来的内容到列表框中? 展开
只是在文本框中输入关键字,下面就能即刻显示数据库要搜索的相关字段。
在线等,高分!
能给源码!
adfasdf.asp页中文显示正常
可是JS调出来之后就是乱码
加上后还是乱码,能不能让这些搜索出来的内容到列表框中? 展开
若以下回答无法解决问题,邀请你更新回答
2个回答
展开全部
<script>
var AJAX={
http_request:false,
DivObj:null,
waitstate:null,
success:null,
get:function (divid,url) {
AJAX.http_request = false;
AJAX.DivObj = document.getElementById(divid);
if(window.XMLHttpRequest) { //Mozilla 浏览器
AJAX.http_request = new XMLHttpRequest();
if (AJAX.http_request.overrideMimeType) {//设置MiME类别
AJAX.http_request.overrideMimeType('text/xml');
}
}else if (window.ActiveXObject) { // IE浏览器
try {
AJAX.http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
AJAX.http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!AJAX.http_request) {
window.alert("不能创建XMLHttpRequest对象实例.");
return false;
}
AJAX.http_request.onreadystatechange = AJAX.processRequest;
AJAX.http_request.open("GET", url+"&"+Math.random(), true);
AJAX.http_request.send(null);
},
processRequest:function () {
if (AJAX.http_request.readyState == 4) {
if (AJAX.http_request.status == 200) {
if(AJAX.DivObj!=null){
AJAX.DivObj.innerHTML=AJAX.http_request.responseText;
}
} else {
alert("您所请求的页面有异常。");
}
}else{
if(AJAX.DivObj!=null){
AJAX.DivObj.innerHTML='<table height="100%" align=center width="100%"><tr><td valign=middle align=center><img src=img/loading.gif /></td></tr></table>';
}
}
}
}
function youhui(str){
AJAX.get('jieguo','adfasdf.asp?word='+str)
}
</script>
<table width="100%" cellpadding="0">
<tr>
<td>搜索</td>
<td><input onpropertychange="youhui(this.value)" /></td>
</tr>
<tr>
<td>结果</td>
<td id="jieguo"></td>
</tr>
</table>
adfasdf.asp也是执行查询就可以了
adfasdf.asp没有指定编码 加上这个<%@ codepage=936%>
<%@ codepage=936%>简体中文
<%@ codepage=950%>繁体中文
<%@ codepage=65001%>UTF-8
var AJAX={
http_request:false,
DivObj:null,
waitstate:null,
success:null,
get:function (divid,url) {
AJAX.http_request = false;
AJAX.DivObj = document.getElementById(divid);
if(window.XMLHttpRequest) { //Mozilla 浏览器
AJAX.http_request = new XMLHttpRequest();
if (AJAX.http_request.overrideMimeType) {//设置MiME类别
AJAX.http_request.overrideMimeType('text/xml');
}
}else if (window.ActiveXObject) { // IE浏览器
try {
AJAX.http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
AJAX.http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!AJAX.http_request) {
window.alert("不能创建XMLHttpRequest对象实例.");
return false;
}
AJAX.http_request.onreadystatechange = AJAX.processRequest;
AJAX.http_request.open("GET", url+"&"+Math.random(), true);
AJAX.http_request.send(null);
},
processRequest:function () {
if (AJAX.http_request.readyState == 4) {
if (AJAX.http_request.status == 200) {
if(AJAX.DivObj!=null){
AJAX.DivObj.innerHTML=AJAX.http_request.responseText;
}
} else {
alert("您所请求的页面有异常。");
}
}else{
if(AJAX.DivObj!=null){
AJAX.DivObj.innerHTML='<table height="100%" align=center width="100%"><tr><td valign=middle align=center><img src=img/loading.gif /></td></tr></table>';
}
}
}
}
function youhui(str){
AJAX.get('jieguo','adfasdf.asp?word='+str)
}
</script>
<table width="100%" cellpadding="0">
<tr>
<td>搜索</td>
<td><input onpropertychange="youhui(this.value)" /></td>
</tr>
<tr>
<td>结果</td>
<td id="jieguo"></td>
</tr>
</table>
adfasdf.asp也是执行查询就可以了
adfasdf.asp没有指定编码 加上这个<%@ codepage=936%>
<%@ codepage=936%>简体中文
<%@ codepage=950%>繁体中文
<%@ codepage=65001%>UTF-8
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<%
Dim Conn
Dim Rs
Dim j
Dim i
Set Conn = Server.CreateObject("adodb.connection")
Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("Mydatabase\#GuestBook.mdb")
Set Rs = Server.CreateObject("Adodb.RecordSet")
'StrSql="Select * From GuestBook" '等同于下句。
StrSql=SplitText("Title Content"," ","Select "," From GuestBook",",")
Rs.Open StrSql, Conn, 1, 3
Call RsFieldShow("Title Content"," ","标题: 内容:","<br/> <br/>")
'j=Rs.Fields.count
'For i=0 to (j-1)
' Response.Write("第" & i+1 & "个字段名:" & Rs.Fields(i).Name & "<br><br>")
'Next
%>
<%
'ASP中把要查询的字段(Content)以字符串形式传递,附有前缀(PreText)、后缀(LastText)。
'要求前后缀产生数组后,与查询字段的数目相同。
Sub RsFieldShow(Byval Content,Byval SplitMark,Byval PreText,Byval LastText)
On Error Resume Next
EveryString=Split(Content,SplitMark)'获得字符串数组,并赋值。
EveryPreText=Split(PreText,SplitMark)
EveryLastText=Split(LastText,SplitMark)
For i=LBound(EveryString) to UBound(EveryString)
Response.Write EveryPreText(i) & Rs(EveryString(i)) & EveryLastText(i) '输出
Next
End Sub
'按照指定的格式输出字符串。
Function SplitText(Byval Content,Byval SplitMark,Byval PreText,Byval LastText,Byval SplitChar)
On Error Resume Next
Dim StrQ
StrQ=Split(Content,SplitMark) '获得字符串数组,并赋值。
For i=LBound(StrQ) to UBound(StrQ) '利用函数取得数组上限和下限。
SplitText=SplitText & StrQ(i) & SplitChar '进行组合
Next
SplitText=Left(SplitText,Len(SplitText)-1) '去掉最后一个符号。
SplitText=PreText & SplitText & LastText '加上前后缀并返回。
End Function
%>
Dim Conn
Dim Rs
Dim j
Dim i
Set Conn = Server.CreateObject("adodb.connection")
Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("Mydatabase\#GuestBook.mdb")
Set Rs = Server.CreateObject("Adodb.RecordSet")
'StrSql="Select * From GuestBook" '等同于下句。
StrSql=SplitText("Title Content"," ","Select "," From GuestBook",",")
Rs.Open StrSql, Conn, 1, 3
Call RsFieldShow("Title Content"," ","标题: 内容:","<br/> <br/>")
'j=Rs.Fields.count
'For i=0 to (j-1)
' Response.Write("第" & i+1 & "个字段名:" & Rs.Fields(i).Name & "<br><br>")
'Next
%>
<%
'ASP中把要查询的字段(Content)以字符串形式传递,附有前缀(PreText)、后缀(LastText)。
'要求前后缀产生数组后,与查询字段的数目相同。
Sub RsFieldShow(Byval Content,Byval SplitMark,Byval PreText,Byval LastText)
On Error Resume Next
EveryString=Split(Content,SplitMark)'获得字符串数组,并赋值。
EveryPreText=Split(PreText,SplitMark)
EveryLastText=Split(LastText,SplitMark)
For i=LBound(EveryString) to UBound(EveryString)
Response.Write EveryPreText(i) & Rs(EveryString(i)) & EveryLastText(i) '输出
Next
End Sub
'按照指定的格式输出字符串。
Function SplitText(Byval Content,Byval SplitMark,Byval PreText,Byval LastText,Byval SplitChar)
On Error Resume Next
Dim StrQ
StrQ=Split(Content,SplitMark) '获得字符串数组,并赋值。
For i=LBound(StrQ) to UBound(StrQ) '利用函数取得数组上限和下限。
SplitText=SplitText & StrQ(i) & SplitChar '进行组合
Next
SplitText=Left(SplitText,Len(SplitText)-1) '去掉最后一个符号。
SplitText=PreText & SplitText & LastText '加上前后缀并返回。
End Function
%>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询