本篇內(nèi)容主要講解“jqXHR對象公開的屬性和方法有哪些”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“jqXHR對象公開的屬性和方法有哪些”吧!
成都創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設,雙遼企業(yè)網(wǎng)站建設,雙遼品牌網(wǎng)站建設,網(wǎng)站定制,雙遼網(wǎng)站建設報價,網(wǎng)絡營銷,網(wǎng)絡優(yōu)化,雙遼網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
從 jQuery 1.5 開始,$.ajax()返回的jqXHR對象 實現(xiàn)了 Promise 接口, 使它擁有了 Promise 的所有屬性,方法和行為。(見Deferred object獲取更多信息)。為了讓回調(diào)函數(shù)的名字統(tǒng)一,便于在$.ajax()中使用。jqXHR也提供.error() .success()和.complete()方法。這些方法都帶有一個參數(shù),該參數(shù)是一個函數(shù),此函數(shù)在 $.ajax()請求結束時被調(diào)用,并且這個函數(shù)接收的參數(shù),與調(diào)用 $.ajax()函數(shù)時的參數(shù)是一致。這將允許你在一次請求時,對多個回調(diào)函數(shù)進行賦值,甚至允許你在請求已經(jīng)完成后,對回調(diào)函數(shù)進行賦值(如果該請求已經(jīng)完成,則回調(diào)函數(shù)會被立刻調(diào)用)。
jqXHR.done(function(data, textStatus, jqXHR) {});
一個可供選擇的 success 回調(diào)選項的構造函數(shù),.done()方法取代了的過時的jqXHR.success()方法。請參閱deferred.done()的實現(xiàn)細節(jié)。
jqXHR.fail(function(jqXHR, textStatus, errorThrown) {});
一種可供選擇的 error 回調(diào)選項的構造函數(shù),.fail()方法取代了的過時的.error()方法。請參閱deferred.fail()的實現(xiàn)細節(jié)。
jqXHR.always(function(data|jqXHR, textStatus, jqXHR|errorThrown) { });
一種可供選擇的 complete 回調(diào)選項的構造函數(shù),.always()方法取代了的過時的.complete()方法。
在響應一個成功的請求后,該函數(shù)的參數(shù)和.done()的參數(shù)是相同的:data, textStatus, 和 jqXHR 對象.對于失敗的請求,參數(shù)和.fail()的參數(shù)是相同的:jqXHR 對象, textStatus, 和 errorThrown。請參閱deferred.always()的實現(xiàn)細節(jié)。
jqXHR.then(function(data, textStatus, jqXHR) {}, function(jqXHR, textStatus, errorThrown) {});
包含了 .done() 和 .fail()方法的功能,(從 jQuery 1.8 開始)允許底層被操縱。請參閱deferred.then()的實現(xiàn)細節(jié)。
推薦使用的注意事項: jqXHR.success(), jqXHR.error(), 和 jqXHR.complete()回調(diào)從 jQuery 1.8開始 被棄用。他們將最終被取消,您的代碼應做好準備,使用jqXHR.done(), jqXHR.fail(), 和 jqXHR.always() 代替。
// Assign handlers immediately after making the request,
// and remember the jqxhr object for this request
var jqxhr = $.ajax( "example.php" )
.done(function() { alert("success"); })
.fail(function() { alert("error"); })
.always(function() { alert("complete"); });
// perform other work here ...
// Set another completion function for the request above
jqxhr.always(function() { alert("second complete"); });
this在所有的回調(diào)中的引用,是這個對象在傳遞給$.ajax的設置中上下文;如果沒有指定context(上下文),this 引用的是Ajax設置的本身。
為了向后兼容XMLHttpRequest ,一jqXHR對象將公開下列屬性和方法:
readyState
status
statusText
responseXML and/or responseText 當?shù)讓拥恼埱蠓謩e作出XML和/或文本響應
setRequestHeader(name, value) 從標準出發(fā),通過替換舊的值為新的值,而不是替換的新值到舊值
getAllResponseHeaders()
getResponseHeader()
abort()
假如沒有onreadystatechange屬性,因為不同的狀態(tài)可以分別在 success , error , complete和statusCode 方法中進行處理。
到此,相信大家對“jqXHR對象公開的屬性和方法有哪些”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關內(nèi)容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!
文章標題:jqXHR對象公開的屬性和方法有哪些
當前路徑:http://jinyejixie.com/article20/jpdjjo.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供微信公眾號、網(wǎng)站營銷、App開發(fā)、Google、移動網(wǎng)站建設、網(wǎng)站內(nèi)鏈
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)