一步一步理解Ajax(一)

來源:互聯網
上載者:User

Ajax是Asynchronous Javascript And XML的縮寫。
作用:通過Ajax可以使用Javascript語句來調用XMLHttpRequest對象,直接與伺服器進行通訊,可以在不重載頁面的情況下與伺服器交換資料。

1、建立XMLHttpRequest對象
    var xhr =  new XMLHttpRequest()
對於IE早期版本(IE7及以下版本)使用,new ActiveXObject("Microsoft.XMLHTTP")、new ActiveXObject("Msxml2.XMLHTTP")等方式建立對象

2、XMLHttpRequest對象常用屬性和常用方法
    屬性
    readystate       返回XMLHTTP請求的目前狀態碼
    state               返回當前請求的HTTP狀態代碼
    statusText       返回HTTP狀態代碼對應的文本

    方法
    onreadystatechange    監聽readystate和state狀態
    open                          建立串連請求
    send                          發送串連請求

    readystate狀態代碼
    0(未初始化)    對象已建立,但尚未初始化
    1(初始化)       對象已建立,尚未調用send方法
    2(發送資料)    send方法已調用,但是當前的狀態代碼及http頭未知
    3(資料傳送中) 已接收部分資料,因為響應及http頭不全,這時通過responseBody和responseText擷取部分資料會出現錯誤
    4(完成)         資料接收完畢,此時可以通過responseBody和responseText擷取完整的回應資料

   state常用狀態代碼
   200            OK                          伺服器成功返回網頁
   404            Not Found                用戶端所有請求的頁面不存在
   503            Service Unavailable    伺服器響應逾時

   open(method,URL,flag,name,password)方法有五個參數
   method參數用於指定使用什麼方式向伺服器發送HTTP請求,參數可以為get、post、head、put和delete五種
   url指定伺服器的URL
   flag參數用於指定提交HTTP請求方方式,true為非同步(預設),false為同步
   name提交使用者名稱,可選
   password提交密碼,可選

   //  建立XMLHttpRequest對象
   function  createXHR(){
       return window.XMLHttpRequest?new XMLHttpRequest():new ActiveXObject("Microsoft.XMLHTTP");
   }
   
   function Ajax(){

        var xhr=new createXHR();
        xhr.onreadystatechange=function(){
            if(4==xhr.readystate&&200==state){
                 /*  成功 */
            }
            else{
                /*  異常 */
            }
        }
       xhr.open("get",url,true);
       xhr.send();
   }

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.