*ajax其實只需要學習乙個物件:xmlhttprequest,如果掌握了 它,就掌握了ajax。
*得到xmlhttprequest
===>大多數瀏覽器支援:var xmlhttp = new xmlhttprequest();
*編寫建立xmlhttprequest(非同步物件)物件的函式
}*xmlhttp.open():用來開啟與伺服器的連線,它需要三個引數:
===>請求方式:可以是get或post
===>請求的url:指定服務端資源:例如/demo/aservlet
===>請求是否為非同步:如果為true代表傳送非同步請求,否則同步請求。
xmlhttp.open("post","/demo/aservlet",true);*xmlhttp.send(null):如果不給null可能會造成部分瀏覽器無法傳送!
===>引數:就是請求體內容!如果是get請求,必須給出null。
如果傳送時帶有引數一般使用post請求
===>如果是post請求
1.設定content-type請求頭:
*在xmlhttp物件的乙個事件上註冊***:onreadystatechange
*xmlhttp物件一共有5個狀態:
===>0狀態:剛建立xmhttp物件,還沒有呼叫open()方法;
===>1狀態:請求開始,還沒有呼叫send()方法;
===>2狀態:呼叫完了send()方法;
===>3狀態:伺服器開始響應,但不表示響應結束;
===>4狀態:伺服器響應結束;(通常我們只關心這個狀態!)
*得到xmlhttp物件的狀態:
==>
//state可能是0,1,2,3,4
var stata = xmlhttp.readystate;
*得到伺服器響應的狀態碼:
==>
//例如為200,404,500
var stata = xmlhttp.status;
*得到伺服器響應的內容:
==>
//得到伺服器響應的文字格式的內容
//得到伺服器響應的xml響應的內容,它是document物件
var content = xmlhttp.respon***ml;
//當狀態改變時會呼叫該方法
()}
//對於不同的瀏覽器 建立不同的xmlhttprequest物件
* object的引數
* method-->可選
* url
* async-->可選
* params-->可選
* type-->可選
* callback
* object是乙個json
*///呼叫該方法時需要建立乙個json物件來進行呼叫
XMLHTTP對像 非同步請求四步曲
xmlhttp請求可以同步,也可以非同步。同步請求的send 方法僅當請求完成時才會返回,非同步請求的send 方法立即返回。為了檢視乙個非同步請求是否完成,需要檢查其readystate。基於mozilla的瀏覽器建立乙個xmlhttp物件,使用xmlhttprequest來構造。在ie瀏覽器中,...
ajax傳送非同步請求的步驟
1.第一步 得到xmlhttprequest ajax要學習乙個物件 xmlhttprequest 編寫建立xmlhttprequest物件的函式 得到xmlhttprequest 2.第二步 開啟與伺服器的連線 xmlhttp.open 用來開啟與伺服器的連線,它需要三個引數 請求方式 可以是ge...
非同步請求響應操作流程(AJAX)
1.0 ajax開發流程 1.獲得當前瀏覽器中內嵌的 物件 2.物件 進行初始化 3.通知 物件 傳送非同步請求 4.對 物件 的 工作狀態 進行 實時監控 決定最佳獲取 物件 中資料的時機。5.將獲得資料,更新到瀏覽中指定控制項上,實現 區域性重新整理 2.0 物件 的 工作狀態 1.工作狀態 有...