使用者的互動操作(interaction)驅動著web站點。理解如何處理響應資訊,特別是在使用新的互動操作形式(例如ajax)的時候,這一點非常重要的。kris hadloc解釋了ajax請求-響應過程的本質,你應該了解這些內容,更好地為使用者互動操作服務。
請求和響應
ajax引擎分很多個方面,每個方面都很重要。如果引擎執行傳送請求和接收響應資訊的事務,那麼它就有很多的處理響應資訊的方法。響應資訊是處理過程中的乙個重要的部分,這是因為使用者最終會與響應資訊互動操作。本文詳細解釋了如何處理ajax響應資訊,並為使用者提供反饋資訊,根據需要進行更新。我們從請求的就緒狀態開始,接著解釋響應資訊的狀態、**(callback)和分析響應資訊。本文還解釋了響應資訊的其它一些方面,例如載入訊息、錯誤處理和顯示響應資訊。
為了建立這個物件並發出請求,你只需要使用下面兩行**:
var ajax = new ajax();
ajax.makerequest('get', 'xml/content.xml', onresponse);
上面的第二行**反映了你選擇的請求方法、xml的路徑或請求的伺服器端指令碼、當接收到響應資訊時你希望呼叫的**方法。現在你對ajax引擎和如何發出請求已經有了一定的了解,我們來看看如何處理請求。
就緒(ready)狀態
就緒狀態由**方法來處理,當我們做出請求的時候,**方法就已經設定好了。在例子中,onresponse被設定為**方法,它在本文中被用於處理所有的分析**的操作。我們將使用下面的**來檢測**方法中的ajax物件的就緒狀態:
function onresponse()}
上面的**顯示,我們將向checkreadystate方法傳遞四個引數。第乙個引數是我們希望顯示的載入(loading)訊息div的id、其它三個引數都是自定義的對應於不同狀態的載入訊息。我選擇的用於載入訊息的div的名字是body,它使得新資料在被載入的時候,內容和載入訊息是合併在一起的。下面是實際的checkreadystate方法,它處理了我們剛才討論的**,並在div中向我們傳遞進去的引數來顯示它。這個方法也被包含在示例ajax引擎中了。
this.checkreadystate = function(_id, _1, _2, _3)}
checkreadystate方法為使用者提供頁面狀態的反饋資訊是有用處的。下表顯示了它檢測的值:
值 狀態
0 uninitialized(未初始化)
1 loading(正在載入)
2 loaded(已經載入)
3 interactive(互動)
4 complete(完成)
var loader = "";
ajax.checkreadystate('body', loader, loader, loader);
不僅checkreadystate方法處理請求狀態,它所包含的http物件也會檢測和返回請求的狀態。
共2頁。 12
8
深入理解ajax
基礎練習 常用 for in迴圈 for var x in json var json json.parse str 把字串解析成 json物件 var json eval str 把括號內字元當 執行 var str1 json.stringify json 將json轉換成字串 json.par...
深入理解Spark RDD RDD資訊物件
rddinfo用於描述rdd的資訊,rddinfo提供的資訊如下 rddinfo還提供了以下方法 清單 1 iscached的實現 def iscached boolean memsize disksize 0 numcachedpartitions 0 清單 2 compare的實現 overri...
C 異常處理的深入理解
1,問題 1,如果在 main 函式中丟擲異常會發生什麼?1,不處理,則崩潰 2,如果異常不處理,最後會傳到 3,下面的 輸出什麼?4,異常的最終處理程式設計實驗 1 include 2 3using namespace std 45 class test 613 14 test 1519 20 2...