數據提交到的兩種請求Get和Post基本上都會使用後,就應該想獲取數據的問題了。前面我們都一直很無私的往服務器提交數據,那麼服務器返回的那些數據,我們又該怎麼通過Ajax去拿呢?
這裏就要靠xmlhttprequest的事件onreadystatechange,這是用來監聽我們請求的一些狀態,比如:成功了還是失敗了。如果成功,想獲取數據,得靠xmlhttprequest的responseText或responseXML屬性
完整例子:
function doGet() {
//1、獲取XMLHttpRequest對象,代碼跟以前一樣,此處不再贅述。
var request = ajaxFunction();
//2、獲取請求
// http://localhost:8080/day16/demo01.jsp
//http://localhost:8080/day16/DemoServlet01
/*
參數一: 請求類型 GET or POST
參數二: 請求的路徑
參數三: 是否異步, true or false
*/
request.open("GET", "ServletDemo1", true);
//3、獲取相應數據,注意監聽的意思。一會準備的狀態發生了改變,那麼就執行=右邊的方法
//對請求的狀態 進行監聽。
request.onreadystatechange=function(){
//前半段表示 已經能夠正常處理。在判斷狀態碼是否是200
if(request.readyState==4 && request.status==200){
//設置節點id爲 myDiv的標籤 結果爲 我們請求得到的響應文字
document.getElementById("myDiv").innerHTML=request.responseText;
}
}
//發送請求
request.send();
}