如果您的错误事件处理程序在发生超时时采用三个参数(xmlhttprequest,textstatus和message),则状态arg将为“超时”。
根据jQuery文档:
第二个参数(除null外)的可能值为“超时”,“错误”,“未修改”和“ parsererror”。
然后,您可以相应地处理错误。
我创建了这个小提琴来演示这一点。
$.ajax({ url: "/ajax_json_echo/", type: "GET", dataType: "json", timeout: 1000, success: function(response) { alert(response); }, error: function(xmlhttprequest, textstatus, message) { if(textstatus==="timeout") { alert("got timeout"); } else { alert(textstatus); } }});使用jsFiddle,您可以测试ajax调用-
它将等待2秒钟才能做出响应。我将超时设置设为1秒,因此它应该出错,并将’timeout’的文本状态传递回错误处理程序。
希望这可以帮助!



