天天看點

AJAX ASP/PHP 執行個體

AJAX 用于創造動态性更強的應用程式。

下面的例子将為您示範當使用者在輸入框中鍵入字元時,網頁如何與 web 伺服器進行通信:

請在下面的輸入框中鍵入字母(A - Z):

<b>在輸入框中嘗試輸入字母 a:</b>

輸入姓名:

提示資訊:

當使用者在上面的輸入框中鍵入字元時,會執行函數 "showHint()" 。該函數由 "onkeyup" 事件觸發:

function showHint(str)

{

var xmlhttp;

if (str.length==0)

document.getElementById("txtHint").innerHTML="";

return;

}

if (window.XMLHttpRequest)

// IE7+, Firefox, Chrome, Opera, Safari 浏覽器執行代碼

xmlhttp=new XMLHttpRequest();

else

// IE6, IE5 浏覽器執行代碼

xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

xmlhttp.onreadystatechange=function()

if (xmlhttp.readyState==4 &amp;&amp; xmlhttp.status==200)

document.getElementById("txtHint").innerHTML=xmlhttp.responseText;

xmlhttp.open("GET","/try/ajax/gethint.php?q="+str,true);

xmlhttp.send();

源代碼解析:

如果輸入框為空 str.length==0,則該函數清空 txtHint 占位符的内容,并退出函數。

如果輸入框不為空,showHint() 函數執行以下任務:

建立 XMLHttpRequest 對象

當伺服器響應就緒時執行函數

把請求發送到伺服器上的檔案

請注意我們向 URL 添加了一個參數 q (帶有輸入框的内容)

以上執行個體 JavaScript 調用的伺服器頁面是 PHP 檔案,名為 gethint.php。

下面,我們建立了兩個版本的伺服器檔案,一個用 ASP 編寫,另一個用 PHP 編寫。

"gethint.asp" 中的源代碼會檢查一個名字數組,然後向浏覽器傳回相應的名字:

下面的代碼用 PHP 編寫,與上面的 ASP 代碼作用是一樣的。