假设我有一个代码:
$.post("test.php", function(data) {
alert("Data Loaded: " + data);
});
有没有办法检查请求是否失败(例如由于超时)?
答案 0 :(得分:45)
是的,来自jQuery documentation:
$.post("test.php", function(data) {
alert("Data Loaded: " + data);
})
.fail(function() {
alert("error");
})
更新:drake7077:“从jquery 1.8开始不推荐使用错误,请使用.fail()”
答案 1 :(得分:1)
两种可能性:
您可以注册“ajax错误”一般回调,当任何ajax操作失败时将调用该回调:
$(document).ajaxError(function(event, jqXHR, settings, exception) { ... });
您可以回退到$.ajax()
,直接包含您自己的错误处理程序。
编辑 - @amosrivera是对的 - 新的“延迟”返回值允许引入处理程序。这些是jQuery 1.5和更新版本。