從jQuery 1.5開始,所有jQuery的AJAX方法都返回一個jqXHR
對象,該對象提供了.error()
,.success()
和.complete()
方法。.success()和.complete()之間的區別?
.success()
和.complete()
有什麼區別?
從jQuery 1.5開始,所有jQuery的AJAX方法都返回一個jqXHR
對象,該對象提供了.error()
,.success()
和.complete()
方法。.success()和.complete()之間的區別?
.success()
和.complete()
有什麼區別?
.success()
只有當您的網絡服務器響應200 OK
HTTP標頭時纔會調用 - 基本上當一切正常時。
然而,.complete()
將總是被調用無論Ajax調用是成功還是失敗 - 也許它輸出的錯誤,並返回一個錯誤 - .complete()仍然會被調用。
值得一提的是,.complete()
將調用後.success()
被調用 - 如果對你很重要。
success()
當服務器返回200個狀態碼被調用時,complete()
被稱爲總是當請求完成後,不管結果如何。
success()
當服務器回狀態代碼,complete()
被success()
後調用調用。我看到一些區別:
在success()
你不能讓你得到使用$.ajax()
並設置XML響應字符串dataType:xml
但complete()
您可以使用
$.ajax({
url:'??',
dataType:'xml',
oncomplete: function(data,status){
console.log(data.responseText);
}
})
@nix得到readed XML文檔的字符串格式你有一個鏈接,更詳細地描述了棄用的東西? – neoneye 2012-05-02 14:34:02
@neoneye Ctrl + F「棄用通知」on api.jquery.com/jQuery.ajax/ – ThatGuy 2012-05-18 17:37:09
http://i.stack.imgur.com/JogVo.png – 2014-02-02 00:21:15