Ajax學習筆記(一)
Ajax作為Web2.0的標志技術,不會這個確實是落伍了。。。
Ajax其實是實現網頁異步交互的技術,我們知道http協議是一次連接之后就斷開了,如果客戶端,也就是瀏覽器想要得到服務器端的數據,就要給服務器發送一個請求,這中間網頁就會停止,就要等待服務器發回數據,大大降低了客戶體驗。其實呢,Ajax說白了只是把這種請求放到了后臺來執行。好吧,現在可以在請求數據的時候做別的事情了,有的像客戶端程序。其實很久很久以后,就不會有WEB程序和客戶端程序之分了(胡思亂想中)
好,還是看Ajax怎么樣請求服務器的,創建xmlHttp對象這就是Ajax操作的對象
var xmlHttp = false;try{ xmlHttp= new ActiveXObject("Msxml.XMLHTTP"); }catch(e){ try{ xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); }catch(e2){ xmlHttp = false; } }</pre>發送請求
xmlHttp.open("GET",url,true); xmlHttp.send(null);得到服務器返回的數據
if(xmlHttp.readyState == 4){ var response = xmlHttp.responseText; alert(response); }這里的4是表示有服務器響應,其他的幾種狀態是:
0 (未初始化) | 對象已建立,但是尚未初始化(尚未調用open方法) | </tr>|||||||||||||||||||||||||
1 (初始化) | 對象已建立,尚未調用send方法 | </tr>|||||||||||||||||||||||||
2 (發送數據) | send方法已調用,但是當前的狀態及http頭未知 | </tr>|||||||||||||||||||||||||
3 (數據傳送中) | 已接收部分數據,因為響應及http頭不全,這時通過responseBody和responseText獲取部分數據會出現錯誤, | </tr>|||||||||||||||||||||||||
4 (完成) | 數據接收完畢,此時可以通過通過responseBody和responseText獲取完整的回應數據 | </tr> </tbody> </table>