我正在对服务器上的php文件进行ajax调用。
该php文件从各个网站检索一些信息,因此在最坏的情况下,ajax调用可能需要30秒才能完成。
我所要做的就是为ajax调用设置一个超时值,并在达到超时值时触发一个函数。
我认为jQuery .complete是我正在寻找的,因为它在任何情况下都被调用,但如何检测它是否在超时时被调用?
实际上,您可以使用.error
代替.complete
。
error(jqXHR, textStatus, errorThrown)
textStatus
将被"timeout".
from http://api.jquery.com/jQuery.ajax/
完成(jqXHR textStatus)
请求完成时调用的函数(在执行成功和错误回调之后)。该函数传递两个参数:jqXHR(在jQuery 1.4中);x, XMLHTTPRequest)对象和对请求状态进行分类的字符串("success", "notmodified", "error", "timeout", "abort"或"parsererror")。