jQuery教程(22)-ajax操作之错误处理

文章标签: jquery-ajax,jquery
2015-1-16 13:08:38     20 人阅读    

jquery-ajax 错误处理
                到现在为止,我们的请求都能够成功地完成,新内容都能如期显示在页面中。但负责任的开 发也会考虑到网络或数据发生错误的可能性,并适当地记录或报告这些错误。在本地环境中开发 Ajax应用有时候会让开发人员过于乐观,因为除了拼错URL这种简单的情况外,Ajax错误不会发 生在本地。更加严重的,$.get()和.load()等快捷的Ajax方法并没有提供错误回调参数,因此我们需要找找其他地方是否有解决方案。


               除了使用全局的.ajaxError()方法,我们还可以利用jQuery的延迟对象系统。第11章将讨 论延迟对象的具体细节,现在只要知道可以给.load()之外的Ajax方法连缀.done()、.always() 和.fail()方法,并通过它们添加相应的回调函数即可。比如,可以在代码清单6-16的基础上, 把URL改为一个不存在的地址,然后测试.fail()方法,如代码清单6-17所示。
代码清单6-17

$(document).ready(function() {
$('#letter-e a').click(function(event) { event.preventDefault();
var requestData = {term: $(this).text()};
$.get('z.php', requestData, function(data) {
$('#dictionary').html(data);
}).fail(function(jqXHR) {
$('#dictionary,)
.html('An error occurred: , + jqXHR.status)
.append(jqXHR.responseText);
});
});
});


现在,单击字母E开头的任何链接都会产生一个错误,如图6-12所示。根据服务器的配置不 同,jqXHR.responseText的内容可能会有所不同。

jquery ajax 错误处理


此外,.status属性中包含着服务器返回的状态码。这些代码由HTTP规范定义,当触 发.fail()处理程序时,可以根据下表解读错误。
响应码          说 明
400              请求语法错误
401              未授权
403              禁止访问
404             未发现请求的URL
500             服务器内部错误


W3C 站点(http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html)有完整的响应码列表。
第13章还会更深人地介绍错误处理


原文地址:http://www.itmmd.com/201501/503.html
该文章由 萌萌的IT人 整理发布,转载须标明出处。

jQuery教程(24)-ajax操作之Ajax和事件   上一篇
下一篇  jQuery教程(21)-jquery ajax 回调函数

精彩回复
发表评论
姓名:       

《程序员app》专门为程序员量身定做!