AJAX PHP示例 AJAX用於創建更多互動式應用程式。 以下示例演示了當用戶在輸入欄位中鍵入字元時,網頁如何與Web伺服器通信: 體驗一下交互 在上面的示例中,當用戶在輸入欄位中鍵入字元時,showHint()執行被調用的函數。該函數由onkeyup事件觸發。 代碼說明:首先,檢查input欄位 ...
AJAX PHP示例
AJAX用於創建更多互動式應用程式。 以下示例演示了當用戶在輸入欄位中鍵入字元時,網頁如何與Web伺服器通信:<!DOCTYPE html> <html> <meta charset="utf-8"> <title>ajax</title> <body> <h2> XMLHttpRequest 對象 </h2> <h3>開始在下麵的input欄位中鍵入名稱:</h3> <p>建議: <span id="txtHint"></span></p> <p>First name: <input type="text" id="txt1" onkeyup="showHint(this.value)"></p> <script> function showHint(str) { var xhttp; if (str.length == 0) { document.getElementById("txtHint").innerHTML = ""; return; } xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementById("txtHint").innerHTML = this.responseText; } }; xhttp.open("GET", "/jc_script/gethint.php?q="+str, true); xhttp.send(); } </script> </body> </html>
在上面的示例中,當用戶在輸入欄位中鍵入字元時,showHint()執行被調用的函數。該函數由onkeyup事件觸發。
代碼說明:首先,檢查input欄位是否為空(str.length == 0)。如果是,請清除txtHint占位符的內容並退出該函數。但是,如果輸入欄位不為空,請執行以下操作:- 創建XMLHttpRequest對象
- 創建伺服器響應準備好時要執行的函數
- 將請求發送到伺服器上的PHP文件(gethint.php)
- 請註意,“gethint.php?q=“+ str添加了q參數
-
str變數保存input欄位的內容
PHP文件 - “gethint.php”
PHP文件檢查名稱數組,並將相應的名稱返回給瀏覽器:<?php// 帶名字的數組 $a[] = "Anna";$a[] = "Brittany"; $a[] = "Cinderella"; $a[] = "Diana"; $a[] = "Eva"; $a[] = "Fiona"; $a[] = "Gunda"; $a[] = "Hege"; $a[] = "Inga"; $a[] = "Johanna"; $a[] = "Kitty"; $a[] = "Linda"; $a[] = "Nina"; $a[] = "Ophelia"; $a[] = "Petunia"; $a[] = "Amanda"; $a[] = "Raquel"; $a[] = "Cindy"; $a[] = "Doris"; $a[] = "Eve"; $a[] = "Evita"; $a[] = "Sunniva"; $a[] = "Tove"; $a[] = "Unni"; $a[] = "Violet"; $a[] = "Liza"; $a[] = "Elizabeth"; $a[] = "Ellen"; $a[] = "Wenche"; $a[] = "Vicky"; // 從URL獲取q參數 $q = $_REQUEST["q"]; $hint = ""; // 如果$q不等於"",則從數組中查找所有提示 if ($q !== "") { $q = strtolower($q); $len=strlen($q); foreach($a as $name) { if (stristr($q, substr($name, 0, $len))) { if ($hint === "") { $hint = $name; } else { $hint .= ", $name"; } } } } // 如果未找到提示或輸出正確值,則輸出“無建議” echo $hint === "" ? "無建議" : $hint;
更詳細的AJAX文章教程