jQuery.post()失败回调函数?

时间:2011-05-18 15:04:02

标签: javascript jquery

假设我有一个代码:

$.post("test.php", function(data) {
   alert("Data Loaded: " + data);
});

有没有办法检查请求是否失败(例如由于超时)?

2 个答案:

答案 0 :(得分:45)

是的,来自jQuery documentation

$.post("test.php", function(data) {
   alert("Data Loaded: " + data);
})
.fail(function() { 
   alert("error"); 
})

更新:drake7077:“从jquery 1.8开始不推荐使用错误,请使用.fail()”

答案 1 :(得分:1)

两种可能性:

  1. 您可以注册“ajax错误”一般回调,当任何ajax操作失败时将调用该回调:

    $(document).ajaxError(function(event, jqXHR, settings, exception) { ... });
    
  2. 您可以回退到$.ajax(),直接包含您自己的错误处理程序。

  3. 编辑 - @amosrivera是对的 - 新的“延迟”返回值允许引入处理程序。这些是jQuery 1.5和更新版本。