【问题标题】:jQuery.post() failure callback function?jQuery.post() 失败回调函数?
【发布时间】:2011-08-28 03:53:08
【问题描述】:

假设我有一个代码:

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

有什么方法可以检查请求是否失败(例如由于超时)?

【问题讨论】:

    标签: javascript jquery


    【解决方案1】:

    是的,来自jQuery documentation

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

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

    【讨论】:

    • .error 仅在 jQuery v1.5 及更高版本中的 .post 上受支持(如文档链接中所述)。
    【解决方案2】:

    两种可能:

    1. 您可以注册一个“ajax错误”通用回调,当任何ajax操作失败时都会调用它:

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

    edit——@amosrivera 是对的——新的“延迟”返回值允许引入处理程序。这些在 jQuery 1.5 和更新版本中可用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-02
      • 2012-04-11
      • 2015-07-08
      相关资源
      最近更新 更多