一.Ajax介紹 Ajax是2005年2月才誕生但是現在已經炙手可熱的一項全新技術.這項新技術能夠極大地改善網站的用戶體驗. 什麼是Ajax Ajax是非同步Javascript和XML(Asynchronous JavaScript and XML)的英文縮寫. Ajax的核心理...
一.Ajax介紹
Ajax是2005年2月才誕生但是現在已經炙手可熱的一項全新技術.這項新技術能夠極大地改善網站的用戶體驗.
什麼是Ajax
Ajax是非同步Javascript和XML(Asynchronous JavaScript and XML)的英文縮寫.
Ajax的核心理念在於使用XMLHttpRequest對象發送非同步請求.Ajax並不是一門新的語言或技術,它實際上是幾項技術按一定的方式組合在一起,共同的協作中發揮各自的作用.
Ajax的優點
1.減輕伺服器的負擔.Ajax的原則是"按需取數據".
2.無需刷新頁面,減少用戶心理和實際的等待時間.
3.帶來更好的用戶體驗.
4.可以把以前一些伺服器負擔的工作轉移到客戶端,利用客戶端閑置的能力來處理,減輕伺服器負擔,充分利用寬頻資源,節約空間和寬頻租用成本.
5.可以調用外部數據.
6.基於標準化的並被廣泛支持的技術,不需要下載插件或者小程式.
7.進一步促進頁面呈現與數據分離.
二.XMLHttpRequest對象介紹
Ajax的一個最大的特點是無需刷新頁面便可向伺服器傳輸或讀寫數據(又稱無刷新更新頁面),這一特點主要得益於XMLHTTP組件XMLHttpRequest對象.
XMLHttpRequest屬性
屬性 |
描述 |
onreadystatechange |
每個狀態改變時都會觸發這個事件處理程式,通常會調用一個JavaScript函數 |
readyState | 請求的狀態 |
responseText | 伺服器的響應,表示為一個串 |
responseXML | 伺服器的響應,表示為XML,這個對象可以解析為一個DOM對象 |
status | 伺服器的HTTP狀態 |
statusText | HTTP狀態的對應文本 |
XMLHttpRequest方法
方法 | 描述 |
abort() | 停止當前請求 |
getAllResponseHeaders() | 把HTTP請求的所有相應首部作為鍵/值對返回 |
getResponseHeader("header") | 返回指定首部的串值 |
open("method","url") | 建立對伺服器的調用.method參數可以是GET,POST或PUT等;url參數可以是相對URL或絕對URL.這個方法還包括3個可選參數 |
send(content) | 向伺服器發送請求 |
setRequestHeader("header","value") | 把指定首部設置為所提供的值,在設置任何首部之前必須先調用open()方法 |