AJAX實用教程——總結

來源:互聯網
上載者:User

         經過前兩篇教程,相信讀者對AJAX實際應用有了一定體會,這篇文章就來總結一下AJAX常用技術。

        

         使用AJAX流程:

        

         l  根據瀏覽器類型建立XMLHttpRequest對象。

         l  設定XMLHttpRequest對象的回呼函數,onreadystatechange屬性。

         l  建立串連,open方法。

         l  設定Http頭資訊,setRequestHeader方法。

         l  請求資料,send方法。

 

         XMLHttpRequest類常用方法、屬性說明:

 

         onreadystatechange方法:設定非同步響應回呼函數,每當響應狀態發生變化時,都將調用此函數,具體是指readyState的值變化。

         open方法:建立請求串連。第一個參數是請求方式,POST或GET;第二個參數是請求的URL,當為GET方式時,URL上可以加參數;第三個參數為是否非同步請求,ture為非同步。

         setRequestHeader方法:佈建要求的頭部資訊。第一個參數是頭資訊名稱,第二個參數是頭資訊值。

         send方法:發送請求。當請求為POST方式時,send方法的參數即POST的參數。

         responseText屬性:擷取伺服器端返回的文字格式設定資料。一般在回呼函數中使用。

         responseXML屬性:擷取伺服器端返回的xml格式資料。一般在回呼函數中使用。

         readyState屬性:當非同步請求發生時,此值會隨著請求進展不斷變化。

                  0: 請求未初始化;

                  1: 伺服器串連已建立;

                  2: 請求已接收;

                  3: 請求處理中;

                  4: 請求已完成,且響應已就緒

         status屬性:請求結果。

                  200: "OK"

                  404: 未找到頁面

 

         Javascript操作xml常用方法、屬性說明:

 

         getElementsByTagName方法:根據元素(標籤)名稱擷取元素,返回一個數組,即使元素只出現一次,也返回一個數組,只不過數組只有一個元素而已。參數是元素名稱。

         getElementById方法:根據id擷取元素。參數是元素id,由於id唯一,因此該方法只返回一個元素。

         getAttribute方法:擷取元素的某個屬性值。參數是屬性名稱。

         setAttribute方法:設定元素的某個屬性值。參數是屬性名稱。

         createElement方法:建立一個元素。參數是元素名稱,如果成功建立,此方法會返回返回元素對象。

         appendChild方法:插入子項目。參數是通過createElement方法建立的元素對象。

         removeChild方法:刪除子項目。參數可以是通過getElementsByTagName或getElementById方法獲得的元素對象。

         firstChild屬性:擷取第一個子項目。

         childNodes屬性:子項目數組。例如:childNodes[i],擷取第i個子項目;childNodes.length擷取所有子項目個數。

         nodeValue屬性:擷取/設定元素值。注意元素值與屬性值的區別。

        

         小菜還要提醒讀者,涉及到xml的操作,一定要特別注意用戶端和伺服器的編碼、解析格式等。假如用戶端要擷取xml格式的資料,伺服器端必須設定ContentType為”text/xml”另外,互動時傳遞的xml資料格式一定要規範,否則很可能造成擷取失敗。

         AJAX的基本知識就這些,掌握這些基本的知識,足以應付一般的需求。

         其實,AJAX有時候不是那麼完美,現在比較流行的線上客服,在網頁裡邊聊天,小菜以為用AJAX實現可以實現推送的效果,實際上是不可以的,只能不停的從伺服器拿資料。

         小菜水平有限,本教程僅供參考!有錯誤之處歡迎指正!

         好了,教程到此結束!歡迎和我多多交流!祝讀者學習愉快!

 

 

相關文章

聯繫我們

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