下面的源代碼屬于上一節的 ajax 實例。
您可以拷貝粘貼這些代碼,然后親自測試一下。
這是 html 頁面。它包含了一個簡單的 html 表單,以及一個指向 javascript 的鏈接。
<html><head><script src="clienthint.js"></script> </head><body><form> first name:<input type="text"id="txt1" onkeyup="showhint(this.value)"
/></form><p>suggestions: <spanid="txthint"
></span></p> </body></html>
下面列出了 javascript 代碼。
這是 javascript 代碼,存儲在文件 "clienthint.js" 中:
var xmlhttpfunction showhint(str)
{ if (str.length==0) { document.getelementbyid("txthint").innerhtml=""; return; } xmlhttp=getxmlhttpobject() if (xmlhttp==null) { alert ("您的瀏覽器不支持ajax!"); return; } var url="gethint.asp"; url=url+"?q="+str; url=url+"&sid="+math.random(); xmlhttp.onreadystatechange=statechanged; xmlhttp.open("get",url,true); xmlhttp.send(null);} function statechanged() { if (xmlhttp.readystate==4){ document.getelementbyid("txthint").innerhtml=xmlhttp.responsetext;}}function getxmlhttpobject()
{ var xmlhttp=null; try { // firefox, opera 8.0+, safari xmlhttp=new xmlhttprequest(); } catch (e) { // internet explorer try { xmlhttp=new activexobject("msxml2.xmlhttp"); } catch (e) { xmlhttp=new activexobject("microsoft.xmlhttp"); } }return xmlhttp;}
其實不存在什么“ajax 服務器”。ajax 頁面可以由任一因特網服務器提供服務。
在上一節的例子中被 javascript 調用的服務器頁面是一個簡單的名為 "gethint.asp" 的 asp 文件。
下面我們列出了這個服務器頁面代碼的實例,使用 asp 來編寫。
"gethint.asp" 頁面中的代碼針對 iis 使用 vbscript 編寫。它會檢查一個名字數組,然后向客戶端返回相應的名字:
<%response.expires=-1dim a(30)'用名字為數組賦值a(1)="anna"a(2)="brittany"a(3)="cinderella"a(4)="diana"a(5)="eva"a(6)="fiona"a(7)="gunda"a(8)="hege"a(9)="inga"a(10)="johanna"a(11)="kitty"a(12)="linda"a(13)="nina"a(14)="ophelia"a(15)="petunia"a(16)="amanda"a(17)="raquel"a(18)="cindy"a(19)="doris"a(20)="eve"a(21)="evita"a(22)="sunniva"a(23)="tove"a(24)="unni"a(25)="violet"a(26)="liza"a(27)="elizabeth"a(28)="ellen"a(29)="wenche"a(30)="vicky"'從url取得參數qq=ucase(request.querystring("q"))'如果q的長度大于0,則查找所有的hintif len(q)>0 then hint="" for i=1 to 30 if q=ucase(mid(a(i),1,len(q))) then if hint="" then hint=a(i) else hint=hint & " , " & a(i) end if end if nextend if'如果找不到hint,則輸出"no suggestion"'或者輸出正確的值if hint="" then response.write("no suggestion")else response.write(hint)end if%>
新聞熱點
疑難解答
圖片精選