簡單的Ajax開發架構

來源:互聯網
上載者:User
      Ajax是一項綜合的技術,Ajax的使用過程,首先是在HTML控制項中添加相應的事件觸發屬性,使其具備事件觸發能力;其次是編寫事件處理函數,並在這個函數中初始化XMLHttpRequest對象,指定響應處理常式,建立http請求,設定必要的http要求標頭資訊,向伺服器發送所建立的http請求;最後才是建立響應處理函數,在對http請求狀態進行判斷的基礎上作出既定的業務處理事務。
       (一)事件處理函數,按照以下順序處理下列事務:
                a) 初始化XMLHttpRequest對象;
                 實現代碼如下:
                  if(widow.XMLHttpRequest) {//Mozilla,Safari,.......
                    http_request= new XMLHttpRequest();
                    } else if(window.ActiveXObject) {//IE
                    http_request= new ActiveXObject("Microsoft.XMLHTTP");
                    } else {
                       window.alert("瀏覽器沒有實現XMLHttpRequest 組件對象!");
                    }
                b) 設定XMLHttpRequest對象的onreadystatechange 屬性,指定伺服器返迴響應資料時要調用的回呼函數, 即指定響應處理函數;
                實現代碼如下:
                 http_request.onreadystatechange=processRequest;
                c) 調用XMLHttpRequest對象的open方法,建立http請求;
                  實現代碼如下:
                   http_request.open("GET", "http://www.example.org/some.file", true);
                 d) 調用XMLHttpRequest對象的setRequestHeader等方法,設定必要的http要求標頭資訊;
                   實現代碼如下:
                    http_request.setRequestHeader("Content-Type",application/x-www-form-urlencoded);
                 e) 調用XMLHttpRequest對象的send方法,發送之前建立的http請求;
                   實現代碼如下:
                   http_request.send(null);
                 f)  根據XMLHttpRequest對象的open方法參數,決定是否等待伺服器返迴響應資料.
     (二)回呼函數(響應處理函數)執行以下事務:
    aa) 判斷http請求的狀態,並作相應處理;
                bb) 調用XMLHttpRequest對象的responseXML or responseText方法,將伺服器返回的響應資料賦予Javascript變數或對象;
                cc) 使用DOM或其它方式解析伺服器返回的響應資料,儲存在緩衝變數或數組中;
                dd) 使用DOM解析HTML文檔,定位目標HTML文檔節點;
                ee)  使用解析完畢的伺服器返回的響應資料,更新上一步解答分析HTML文檔節點的屬性值或內容,從而更新HTML文檔頁面內容.
              
 
                 
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.