ajax超时回调函数

如果jQuery的$ .ajax函数达到timeout有没有办法运行函数?

 $.ajax({ ... ... ,timeout:1000(){do something if timeout) ... }); 

 $.ajax({ ... timeout: 1000, error: function(jqXHR, textStatus, errorThrown) { if(textStatus==="timeout") { //do something on timeout } } });​ 

有关更多信息,请查看jQuery文档:

http://api.jquery.com/jQuery.ajax/


编辑

自从我最初回答这个问题已经超过一年了, textStatus可能的值已经变为"success", "notmodified", "error", "timeout", "abort","parsererror" 。 对于错误回调,只能使用最后四种状态。

此外,您现在可以通过返回的JQuery延迟promise对象的.fail方法连接error handling程序:

 var promise = $.ajax({ timeout: 1000 }); promise.fail(function(jqXHR, textStatus) { if(textStatus==="timeout") { // handle timeout } });