Ajax (Asynchronous JavaScript and XML)
學習Ajax以前必需要有JavaScript和DOM的基礎
1、Ajax的介紹和優勢
a. 什麼是Ajax?
Ajax採用是異步交互過程
1. 局部刷新
2. 按需取數據
b. Ajax的優缺點
c. Ajax的應用
2、建立Ajax對象, 這是學習Ajax的第一步
var request=new XMLHttpRequest();
var d=new Date();
建立對象過程比較複雜一點,但這些代碼是固定的
將建立XMLHttpRequest對象的過程寫到一個函數中
主要是把瀏覽器分紅兩種
一種是IE系列的瀏覽器(IE5.0 IE5.5 IE6.0, IE7 IE8)
一種是非IE瀏覽器(都是按W3C標準) FF Mozilla NetScape
Ajax引擎對象中的方法
abort() 中止當前請求
getAllResponseHeaders() 做爲字符串返回完整的headers
getResponseHeader("headerLabel") 做爲字符串返回單個的header標籤
open("method","URL"[,asyncFlag[,"userName"[, "password"]]]) 設置未決的請求的目標 URL,方法,和其餘參數
send(content) 發送請求
setRequestHeader("label", "value") 設置header並和請求一塊兒發送
Ajax引擎對象中的屬性
onreadystatechange 狀態改變的事件觸發器
readyState 對象狀態(integer):
0 = 未初始化 1 = 讀取中2 = 已讀取3 = 交互中4 = 完成
responseText 服務器進程返回數據的文本版本
responseXML 服務器進程返回數據的兼容DOM的XML文檔對象
status 服務器返回的狀態碼, 如:404 = "文件未找到" 、200 ="成功"
3、使用Ajax請求服務器
是用Ajax中的方法實現
4、經過Ajax獲取服務器發送的數據
是用Ajax的屬性實現
5、建立Ajax類簡化Ajax的使用
6、Ajax的實例製做(惟一校驗和無刷新分頁)
new ActiveXObject("Microsoft.XMLHTTP");
new ActiveXObject("MSXML.XMLHTTP");
new ActiveXObject("'Msxml2.XMLHTTP.7.0'");
....
['Microsoft.XMLHTTP', 'MSXML.XMLHTTP', 'Msxml2.XMLHTTP.7.0', 'Msxml2.XMLHTTP.6.0', 'Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP']瀏覽器