检查AJAX请求在jQuery中是否成功的最佳方法

前端之家收集整理的这篇文章主要介绍了检查AJAX请求在jQuery中是否成功的最佳方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直在检查,以确保我的 AJAX请求是成功的做这样的事情:
$.post("page.PHP",{data: stuff},function(data,status) {
    if(status == "success") {
        //Code here
    }
    else {
        //Error handling stuff
    }
});

检查状态变量是执行此操作的最佳方式,还是有更好的方法确保请求实际执行?我正在考虑一个“成功”的请求,作为一个请求,我发布成功的页面,没有超时(如果服务器关闭,AJAX请求作为一个例子),或返回任何404或500错误.

通过这样调用$.post,您只能在成功处理函数自动传递.

如果请求出现问题,该方法甚至不执行.

要有更多的控制权可以直接使用$.ajax(),或者传递失败的处理程序.那可能看起来像

$.post("page.PHP",status) {
   // we're fine here
}).fail(function(err,status) {
   // something went wrong,check err and status
});

同样的事情使用.ajax():

$.ajax({
   type: 'POST',url: 'page.PHP',data: stuff,success: function( data ) {
   },error: function(xhr,status,error) {
      // check status && error
   },dataType: 'text'
});

您甚至可以将更多的ajax事件处理程序传递给$.ajax,如beforeSend修改/读取XHR标头,或者在请求完成时,完成一个处理程序可以触发任何一种方式(错误或不发生).

猜你在找的Ajax相关文章