AJax這個名字看起來很神奇,我第一次見到它也被它吸引了,它是Asynchronous Javascript and XML的簡寫,異步的JavaSCRIPT和XML,關於AJax的介紹在網上的介紹太多了,我就不多那麼多了,我的口才不好,沒他們說的那麼精彩,可以去http://zh.wikipedia.org/wiki/AJax 看看,在這裡我只是給大家一個例子,了解如何去使用AJax。
AJAX最有意思的地方就是可以不用刷新網頁而可以和後台進行交互,不需要對頁面進行刷新,實現網頁與網頁間的平滑過渡。使用AJax不需要安裝新的插件,只要求你的浏覽器支持JavaSCRIPT。
首先你需要你個JavaSCRIPT中的對象XMLHttpRequest,它是AJax的核心,我們都圍繞著它做事,通過下面的代碼可以獲取一個:
if (window.XMLHttpRequest){
xmlObj = new XMLHttpRequest();
}else if (window.ActiveXObject){
xmlObj = new ActiveXObject("Microsoft.XMLHTTP");
}我們通過這個對象的OPEN方法向服務發送請求,
該函數聲明為XMLHttpRequest.open(String method, String URL, boolean asynchronous);
method是請求的方式,可以為GET和POST
URL是你要請求的資源
asynchronous是布爾類型,為true表示交互設置為異步XMLObj.open("GET",URL,true);
XMLObj.send("");調用send()(參數是空或是null)將會發起一次請求,
對於GET方式的請求,兩次同樣的請求將會得到相同的結果,
由於為將交互設置為異步方式,因此要為指定一個回調函數:
XMLObj.onreadystatechange = callBackFunction;
剩下的事就交給回調函數處理了。有一點要注意了,用Servlet或JSP來響應異步請求時,
要設置reponse的contentType屬性指明是XML格式:
response.setContentType("text/XML");
一切都准備好了,那我們現在來做一個簡單的異步請求,並將請求返回的結果顯示出來:客戶端:
發送請求
看這裡!
以下是data.JSP<%response.setContentType("text/XML");%>
Zjcfan