AJAX - 向伺服器發送一個請求
要想把請求發送到伺服器,我們就需要使用 open() 方法和 send() 方法。
open() 方法需要三個參數。第一個參數定義發送請求所使用的方法(GET 還是 POST)。第二個參數規定伺服器端指令碼的 URL。第三個參數規定應當對請求進行非同步地處理。
send() 方法可將請求送往伺服器。如果我們假設 HTML 檔案和 ASP 檔案位於相同的目錄,那麼代碼是這樣的:
xmlHttp.open
("GET","time.asp",true);
xmlHttp.send
(null);
現在,我們必須決定何時執行 AJAX 函數。當使用者在使用者名稱文字框中鍵入某些內容時,我們會令函數“在幕後”執行。
<html>
<body>
<script type="text/javascript">
function ajaxFunction()
{
var xmlHttp
;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
// Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e)
{
alert("您的瀏覽器不支援AJAX!");
return false;
}
}
}
xmlHttp.onreadystatechange
=function()
{
if(xmlHttp.readyState
==4)
{
document.myForm.time.value=xmlHttp.responseText
;
}
}
xmlHttp.open("GET","time.asp",true)
;
xmlHttp.send(null)
;
}
</script>
<form name="myForm">
使用者: <input type="text" name="username" onkeyup="ajaxFunction();"
/>
時間: <input type="text" name="time" />
</form>
</body>
</html>