1、創建XMLHTTPRequest對象已經在上節課介紹了。如果是firefox浏覽器直接new一個對象。var xmlhttp = new XMLHttpRequest();如果是IE則用ActiveXObject來創建。
var xmlhttp = new ActiveXObject(Microsoft.XMLHTTP);
var xmlhttp = new ActiveXObject(Msxml2.XMLHTTP);
但是要響應一個事件啊,也就是上節課唯一講的一個事件onreadystatechange直接調用這個事件就可以了。xmlhttp .onreadystatechange=函數名;Ajax裡面也就這麼一個內部事件。
2、發送請求
響應處理函數了之後,當然要發出請求了。這回就調用了上節課的open()和send()
兩個方法了xmlhttp.open(“GET”,url,true); xmlhttp.send(null);
open()的第三個參數true只是在返回信息的時間內是否繼續執行下面的代碼。如果為true,則不會繼續執行,直到返回信息。默認為true。
3、這第三步就是接收請求的一個過程,沒有什麼具體的代碼可寫,只不過是每個項目都有一樣的邏輯。
4、在返回響應數據之前,我們要先判斷一下readyState的數值是否為4,也就是是否信息全部返回。
if (xmlhttp.readyState = = 4 ) {
//信息已經返回,可以處理}
返回信息則要看看HTTP的狀態碼,是否等於200,200是代表正常的意思。總不能還報404錯誤呢,自己還不知道啊。if(xmlhttp.status = =200) { //頁面正常 }
對於返回成功的信息有兩種方式來處理,大家學過上節課的可能已經知道了。一個是responseText,另一種是responseXML。
把上述代碼結核起來就是一個最出的ajax過程的代碼了。