婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > ajax readyState的五種狀態詳解

ajax readyState的五種狀態詳解

熱門標簽:上海浦東騰訊地圖標注位置 海南銀行智能外呼系統商家 姜堰電銷機器人 電銷機器人違法了嗎 澳大利亞城市地圖標注 遼寧正規電銷機器人 辰溪地圖標注 遼寧銀行智能外呼系統 許昌智能電銷機器人公司
在《Pragmatic Ajax A Web 2.0 Primer 》中對readyStae狀態的介紹,摘譯如下:
0: (Uninitialized) the send( ) method has not yet been invoked.
1: (Loading) the send( ) method has been invoked, request in progress.
2: (Loaded) the send( ) method has completed, entire response received.
3: (Interactive) the response is being parsed.
4: (Completed) the response has been parsed, is ready for harvesting.
0 - (未初始化)還沒有調用send()方法
1 - (載入)已調用send()方法,正在發送請求
2 - (載入完成)send()方法執行完成,已經接收到全部響應內容
3 - (交互)正在解析響應內容
4 - (完成)響應內容解析完成,可以在客戶端調用了
對于readyState的這五種狀態,其他書中大都語焉不詳。像《Foundations of Ajax》中,只在書中的表2-2簡單地列舉了狀態的“名稱”--The state of the request. The five possible values are 0 = uninitialized, 1 = loading, 2 = loaded, 3 = interactive, and 4 = complete。而《Ajax in Action》中好像根本就沒有提到這5種狀態的細節。
《Professional Ajax》中雖不盡人意,但還是有可取之處:
There are five possible values for readyState:
0 (Uninitialized): The object has been created but the open() method hasn't been called.
1 (Loading): The open() method has been called but the request hasn't been sent.
2 (Loaded): The request has been sent.
3 (Interactive). A partial response has been received.
4 (Complete): All data has been received and the connection has been closed.
readyState有五種可能的值:
0 (未初始化): (XMLHttpRequest)對象已經創建,但還沒有調用open()方法。
1 (載入):已經調用open() 方法,但尚未發送請求。
2 (載入完成): 請求已經發送完成。
3 (交互):可以接收到部分響應數據。
4 (完成):已經接收到了全部數據,并且連接已經關閉。
在《Understanding AJAX: Using JavaScript to Create Rich Internet Applications》中,則用下表進行了說明:
readyState Status Code
Status of the XMLHttpRequest Object
(0) UNINITIALIZED 未初始化
The object has been created but not initialized. (The open method has not been called.)
(XMLHttpRequest)對象已經創建,但尚未初始化(還沒有調用open方法)。
(1) LOADING 載入
The object has been created, but the send method has not been called.
(XMLHttpRequest)對象已經創建,但尚未調用send方法。
(2) LOADED 載入完成
The send method has been called, but the status and headers are not yet available.
已經調用send方法,(HTTP響應)狀態及頭部還不可用。
(3) INTERACTIVE 交互
Some data has been received. Calling the responseBody and responseText properties at this state to obtain partial results will return an error, because status and response headers are not fully available.
已經接收部分數據。但若在此時調用responseBody和responseText屬性獲取部分結果將會產生錯誤,因為狀態和響應頭部還不完全可用。
(4) COMPLETED 完成
All the data has been received, and the complete data is available in the responseBody and responseText properties.
已經接收到了全部數據,并且在responseBody和responseText屬性中可以提取到完整的數據。
根據以上幾本書中的關于readyState五種狀態的介紹,我認為還是《Pragmatic Ajax A Web 2.0 Primer 》比較到位,因為它提到了對接收到的數據的解析問題,其他書中都沒有提到這一點,而這一點正是“(3)交互”階段作為一個必要的轉換過程存在于“(2)載入完成”到“(4)完成”之間的理由,也就是其任務是什么。歸結起來,我覺得比較理想的解釋方法應該以“狀態:任務(目標)+過程+表現(或特征)”表達模式來對這幾個狀態進行定義比較準確,而且讓人容易理解。
總結如下:
readyState 狀態 狀態說明
(0)未初始化
此階段確認XMLHttpRequest對象是否創建,并為調用open()方法進行未初始化作好準備。值為0表示對象已經存在,否則瀏覽器會報錯--對象不存在。
(1)載入
此階段對XMLHttpRequest對象進行初始化,即調用open()方法,根據參數(method,url,true)完成對象狀態的設置。并調用send()方法開始向服務端發送請求。值為1表示正在向服務端發送請求。
(2)載入完成
此階段接收服務器端的響應數據。但獲得的還只是服務端響應的原始數據,并不能直接在客戶端使用。值為2表示已經接收完全部響應數據。并為下一階段對數據解析作好準備。
(3)交互
此階段解析接收到的服務器端響應數據。即根據服務器端響應頭部返回的MIME類型把數據轉換成能通過responseBody、responseText或responseXML屬性存取的格式,為在客戶端調用作好準備。狀態3表示正在解析數據。
(4)完成
此階段確認全部數據都已經解析為客戶端可用的格式,解析已經完成。值為4表示數據解析完畢,可以通過XMLHttpRequest對象的相應屬性取得數據。
概而括之,整個XMLHttpRequest對象的生命周期應該包含如下階段:
創建-初始化請求-發送請求-接收數據-解析數據-完成
在具體應用中,明確了readyState的五個狀態(XMLHttpRequest對象的生命周期各個階段)的含義,就可以消除對Ajax核心的神秘感(語焉不詳的背后要么是故弄玄虛,制造神秘感;要么就是“以其昏昏,使人昭昭”),迅速把握其實質,對減少學習中的挫折感和增強自信心都極其有益。
比如,通過如下示例:
程序代碼
//聲明數組
var states = ["正在初始化……",
"正在初始化請求……成功!br/>正在發送請求……",
"成功!br/>正在接收數據……",
"完成!br/>正在解析數據……",
"完成!br/>"];
//回調函數內部代碼片段
if (xmlHttp.readyState==4)
{
var span = document.createElement(“span”);
span.innerHTML = states[xmlHttp.readyState];
document.body.appendChild(span);
if (xmlHttp.status == 200)
{
var xmldoc = xmlHttp.responseXML;
//其他代碼
}
//別忘記銷毀,防止內存泄漏
xmlHttp = null;
}
else
{
var span = document.createElement(“span”);
span.innerHTML = states[xmlHttp.readyState];
document.body.appendChild(span);
}
結果如下:
正在初始化請求……成功!
正在發送請求……成功!
正在接收數據……完成!
正在解析數據……完成!
我們很容易明白XMLHttpRequest對象在各個階段都在做什么。因此,也就很容易對Ajax的核心部分有一個真正簡單明了的理解。
附:
Example 1
readyState 返回XMLHTTP請求的當前狀態
語法 lValue = oXMLHttpRequest.readyState;
程序代碼
var XmlHttp;
XmlHttp = new ActiveXObject("Msxml2.XMLHTTP.3.0");
function send() {
XmlHttp.onreadystatechange = doHttpReadyStateChange;
XmlHttp.open("GET", "http://localhost/sample.xml", true);
XmlHttp.send();
}
function doHttpReadyStateChange() {
if (XmlHttp.readyState == 4) {
alert("Done");
}
}
備注 變量,此屬性只讀,狀態用長度為4的整型表示.定義如下:
0 (未初始化) 對象已建立,但是尚未初始化(尚未調用open方法)
1 (初始化) 對象已建立,尚未調用send方法
2 (發送數據) send方法已調用,但是當前的狀態及http頭未知
3 (數據傳送中) 已接收部分數據,因為響應及http頭不全,這時通過responseBody和responseText獲取部分數據會出現錯誤,
4 (完成) 數據接收完畢,此時可以通過通過responseBody和responseText獲取完整的回應數據
Example 2
下面這個范例說明如何在運行時以 VBScript 代碼讀取 RDS.DataControl 對象的 ReadyState 屬性。ReadyState 為只讀屬性。
要測試該范例,請剪切該代碼并粘貼到標準 HTML 文檔的 Body>/Body> 標記之間,然后將其命名為“ADCapi9.asp”,ASP 腳本將標識服務器。
程序代碼
Center>
H2>RDS API Code Examples /H2>
HR>
H3> RDS.DataControl ReadyState property/H3>
/Center>
!-- 在運行時設置參數的 RDS.DataControl -->
OBJECT classid="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33"
ID=ADC>
PARAM NAME="SQL" VALUE="Select * from Employee for browse">
PARAM NAME="SERVER" VALUE="http://%=Request.ServerVariables("SERVER_NAME")%>">
PARAM NAME="CONNECT" VALUE="dsn=ADCDemo;UID=ADCDemo;PWD=ADCDemo;">
PARAM NAME="ExecuteOptions" VALUE="adcExecAsync">
PARAM NAME="FetchOptions" VALUE="adcFetchAsync">
/OBJECT>
Script Language="VBScript">
Sub Window_OnLoad
Select Case ADC1.ReadyState
case 2: MsgBox "Executing Query"
case 3: MsgBox "Fetching records in background"
case 4: MsgBox "All records fetched"
End Select
End Sub
/Script>
您可能感興趣的文章:
  • C#.NET中如何批量插入大量數據到數據庫中
  • Asp.Net使用Bulk實現批量插入數據
  • C#/.Net 中快速批量給SQLite數據庫插入測試數據
  • asp.net新聞列表生成靜態頁之批量和單頁生成
  • 在ASP.NET 2.0中操作數據之六十二:GridView批量更新數據
  • 在ASP.NET 2.0中操作數據之六十四:GridView批量添加數據
  • 在ASP.NET 2.0中操作數據之三十七:DataList批量更新
  • AJAX(XMLHttpRequest.status)狀態碼
  • javascript學習筆記(七)Ajax和Http狀態碼
  • asp.net線程批量導入數據時通過ajax獲取執行狀態

標簽:銅川 西藏 伊春 晉城 撫州 威海 深圳 崇左

巨人網絡通訊聲明:本文標題《ajax readyState的五種狀態詳解》,本文關鍵詞  ajax,readyState,的,五種,狀態,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《ajax readyState的五種狀態詳解》相關的同類信息!
  • 本頁收集關于ajax readyState的五種狀態詳解的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    日本中文一区二区三区| 日本道精品一区二区三区| 色综合久久六月婷婷中文字幕| 国产精品三级久久久久三级| 欧美日韩一区二区在线观看视频| 一区二区三区四区不卡在线| 久久伊人中文字幕| 欧美不卡一区二区三区四区| 欧美日韩大陆在线| 日本韩国精品在线| 欧美伊人精品成人久久综合97| 97久久超碰国产精品电影| 国产精品99久久久久| 国产乱淫av一区二区三区| 日日欢夜夜爽一区| 91在线播放网址| 欧美性做爰猛烈叫床潮| 日韩丝袜情趣美女图片| 日韩一区二区三| 在线成人午夜影院| 日本一区二区免费在线| 一区二区三区在线观看视频| 一区二区三区四区五区视频在线观看 | 波多野结衣一区二区三区| 蜜桃精品视频在线| 成人国产免费视频| 在线视频观看一区| 国产精品人人做人人爽人人添| 国产精品热久久久久夜色精品三区| 国产区在线观看成人精品| 亚洲女爱视频在线| 91官网在线观看| 国产精品系列在线| 中文字幕av在线一区二区三区| 国产精品久久久久久久岛一牛影视| 亚洲va韩国va欧美va精品| 日韩欧美一区二区在线视频| 亚洲色图另类专区| 激情小说欧美图片| 国产麻豆9l精品三级站| 欧美精品777| 99在线精品一区二区三区| 97精品久久久午夜一区二区三区| 午夜精品一区在线观看| 欧美激情综合在线| 精品福利视频一区二区三区| 制服丝袜中文字幕一区| 欧美精品亚洲二区| 91精品国产高清一区二区三区蜜臀 | 色综合欧美在线视频区| 三级亚洲高清视频| 亚洲三级免费电影| 欧美一区二区三区男人的天堂| 丁香五精品蜜臀久久久久99网站| 亚洲欧美日韩人成在线播放| 日韩一区二区在线看| 色天天综合色天天久久| 99久久精品99国产精品| 成人短视频下载| 国产一区福利在线| 美国十次综合导航| 国产在线精品一区在线观看麻豆| 免费欧美在线视频| 成人福利在线看| 欧美一区2区视频在线观看| 国产日韩综合av| 天天综合色天天综合色h| 国产精品资源在线观看| 色香蕉久久蜜桃| 欧美日韩免费视频| 久久九九久精品国产免费直播| 亚洲欧美自拍偷拍色图| 亚洲影院在线观看| 激情文学综合网| 欧美人动与zoxxxx乱| 日本一区二区三区四区在线视频| 亚洲精品菠萝久久久久久久| 欧美性极品少妇| 欧美综合欧美视频| 日本欧美肥老太交大片| 国产一区二区精品久久| 91在线高清观看| 久久亚洲一区二区三区四区| 久久精品网站免费观看| 久久尤物电影视频在线观看| 精品国产亚洲一区二区三区在线观看| 国产偷国产偷精品高清尤物| 中文字幕免费不卡| 风间由美一区二区三区在线观看| 欧美亚洲国产一区在线观看网站| 国产日韩精品一区二区浪潮av| 另类小说图片综合网| 精品国产123| 91麻豆精品视频| 日韩和的一区二区| 日韩无一区二区| 国产成人激情av| 一区二区三区在线免费观看| 欧美日韩视频专区在线播放| 秋霞午夜鲁丝一区二区老狼| 777奇米成人网| 丰满少妇在线播放bd日韩电影| 亚洲国产精品精华液2区45| 色婷婷av一区二区三区软件 | 国产成人av在线影院| 一区二区三区四区在线| 久久久国际精品| 制服视频三区第一页精品| 国产夫妻精品视频| 日本伊人色综合网| 亚洲国产乱码最新视频| 国产女人18毛片水真多成人如厕 | 欧美视频三区在线播放| 成人午夜私人影院| 九九国产精品视频| 欧美aaaaaa午夜精品| 亚洲国产精品人人做人人爽| 国产欧美日韩卡一| 日韩免费看的电影| 日韩你懂的在线观看| 欧美群妇大交群的观看方式| 成人h版在线观看| www.亚洲色图.com| av电影在线观看一区| 久草中文综合在线| 国内精品久久久久影院色| 日韩电影一二三区| 日韩成人精品视频| 成人欧美一区二区三区视频网页| 国内精品视频666| 免费观看一级特黄欧美大片| 91精品国产综合久久精品图片| 五月天一区二区三区| 精品亚洲porn| 福利电影一区二区三区| 欧美一级免费观看| 日本特黄久久久高潮| 久久精品人人做人人爽97| 欧美精品一区男女天堂| 蜜臂av日日欢夜夜爽一区| 亚洲乱码国产乱码精品精小说 | 国产一区二区不卡| 99re成人在线| 欧美变态tickle挠乳网站| 亚洲欧洲另类国产综合| 日韩av电影天堂| 色婷婷精品大在线视频| 久久久蜜桃精品| 久久不见久久见免费视频7| 九九视频精品免费| 日日欢夜夜爽一区| 波多野结衣在线aⅴ中文字幕不卡| 91亚洲永久精品| 国产精品视频一二| 日韩一区精品字幕| 欧美日本国产视频| 日韩情涩欧美日韩视频| 亚洲视频每日更新| av亚洲精华国产精华精| 国产精品久久夜| 色欧美片视频在线观看在线视频| 中文字幕+乱码+中文字幕一区| 狠狠色综合日日| 国产乱人伦精品一区二区在线观看 | 亚洲国产一区二区在线播放| 91亚洲精品久久久蜜桃网站 | 一区二区三区高清不卡| 午夜精品在线视频一区| 99久精品国产| 夜夜亚洲天天久久| 91女人视频在线观看| 国产精品成人在线观看| 91丝袜美女网| 蜜臀久久久久久久| 久久久国产精品不卡| 色猫猫国产区一区二在线视频| 亚洲一二三四久久| 国产三级欧美三级日产三级99| 色一情一乱一乱一91av| 国产乱码一区二区三区| 一区二区久久久久久| 2023国产精品视频| 欧美精品在线观看一区二区| 福利一区二区在线观看| 青青青伊人色综合久久| 国产精品国产三级国产三级人妇 | 亚洲三级在线观看| 久久综合色综合88| 欧美日韩一级二级三级| 国产成人在线视频网站| 蜜桃久久久久久久| 亚洲成人777| 亚洲gay无套男同| 亚洲自拍偷拍九九九| www成人在线观看| 日韩视频免费直播| 日韩精品中文字幕一区二区三区 | 亚洲精品v日韩精品| 精品伦理精品一区| 日韩一级免费观看|