jquery ajax 怎么判断请求失败?

他提供的complete的发送请求前就执行的,那就是无论请求有没有成功,他都触发了,success是请求成功后执行的,那就一定请求成功,并有数据返回了。。那什么时候是请求... 他提供的complete的发送请求前就执行的,那就是无论请求有没有成功,他都触发了,success是请求成功后执行的,那就一定请求成功,并有数据返回了。。

那什么时候是请求失败呢,比如,用户网速慢,连接超时了、无响应了,或服务器端出错,处理ajax的文件不存在了,这些情况怎么判断啊?
就是说,如果ajax连接超时,我要提示他 连接超时,请重试, 如果是文件出错,那就提示 异常错误,这样 看到异常错误,我就可以去查我的程序了。。怎么判断呀??
展开
 我来答
abiao5555
2012-02-02 · TA获得超过591个赞
知道小有建树答主
回答量:516
采纳率:0%
帮助的人:490万
展开全部
请求失败的定义应该是限定时间内服务器没有返回数据。

你需要定义一个超时时间,比如5秒
在发起请求时,用setTimeout定义一个5秒后执行的函数,这个函数被执行了,就表示超时
在success回调函数里面调用clearTimeout 清除延时函数,这样如果请求在5秒内成功,超时函数就不会被执行了
另外,在超时回调函数里面调用 abort 终止超时的请求,免得超时回调函数执行了,到第5秒之后更长时间,请求返回了,success就执行了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友82271f8de
2012-02-05 · TA获得超过254个赞
知道答主
回答量:423
采纳率:0%
帮助的人:286万
展开全部
$.ajax({ url: "a.html", error: function(){
alert("连接失败");
}
});
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式