.success()和.complete()之间的区别?
从jQuery 1.5开始,所有jQuery的AJAX方法都会返回提供.error()
.success()
和.success()
方法的jqXHR
对象。
.success()
和.success()
之间有什么区别?
.success()
只有在你的web服务器响应200 OK
HTTP头时才会被调用 – 基本上当一切正常的时候。
但是,无论ajax调用是否成功, .complete()
都会被调用 – 可能会输出错误并返回错误 – .complete()仍然会被调用。
值得一提的是, .success()
会在 .success()
被调用之后被调用 – 如果它对你很重要的话。
当服务器返回一个200状态码时调用success()
,不pipe结果如何, complete()
在请求完成时总是被调用。
success()
在服务器返回200状态码时调用, complete()
在success()
之后被调用。 我看到一些区别:
在success()
你不能得到xml响应string,你使用$.ajax()
和设置dataType:xml
但是在complete()
你可以得到string格式的readed xml文档使用
$.ajax({ url:'??', dataType:'xml', oncomplete: function(data,status){ console.log(data.responseText); } })