2012-03-23 35 views
1

我把这个在我的JavaScript,并介绍了我的$就一个500错误,但这种例行从来没有得到所谓:

$('#msg').ajaxError(function(myEvent, jqXHR, ajaxSettings, thrownError) { 
    $(this).html(thrownError).addClass('alert alert-error'); 
}); 

如果我添加一个.fail,那么.fail得到的调用,但ajaxError永远不会被调用。

+0

'ajaxError'文档:http://api.jquery.com/ajaxError/他们有几个例子 – nathanjosiah 2012-03-23 23:08:08

+1

确定AJAX请求甚至正在经历?使用Firebug进行检查。 – hohner 2012-03-23 23:11:33

+0

是的。嗯...我想知道为什么它不工作... – 2012-03-23 23:12:13

回答

2

ajaxError()除了其他是全局事件,只要你有标准方式处理你网站上的所有ajax请求,而不是每个ajax请求,你都会使用这些事件。例如,显示在成功/失败一些进度条..

Jquery ajax global events

在上述情况下,请确保您的脚本失败请求一个无效的URL等或服务器响应的无效数据检查ajaxError如

+0

的确如此。但是ajaxError没有被调用,并且我有一个错误已经被任何东西所捕获。这是一个概念验证页面,可以查看ajaxError是如何工作的。 – 2012-03-23 23:19:48

+0

然后,你可以把整个代码,例如,与AJAX请求... – sakhunzai 2012-03-23 23:21:54

+0

请确保您在添加此方法之前,请求AJAX请求 – sakhunzai 2012-03-23 23:25:05

1

您必须使用文件选择器这样的:

$(document).ajaxError 
+0

作为参考:“从jQuery 1.8开始,应该只附加.ajaxError()方法记录“。 [.ajaxError()](http://api.jquery.com/ajaxError/) – showdev 2015-11-20 16:55:44