我有一堆包含成功和错误条件的ajax调用,就像下面这样:
$.ajax({
url: 'Remote/State.cfc'
,type: "POST"
,data: {
'method': 'UpdateStateName'
,'StateID': StateID
,'StateName': StateName
}
,success: function(result){
if (isNaN(result)) {
$('#msg').text(result).addClass('err');
} else {
$('#' + result + ' input[name="StateName"]').addClass('changed');
};
}
,error: function(msg){
$('#msg').text('Connection error').addClass('err');
}
});所有的错误条件都是相同的。换句话说,它们都将短语“连接错误”放在msg id中。
Q1:我是否可以删除所有这些并将其替换为
$().ajaxError(function(myEvent, request, settings, thrownError) {
$('#msg').text('Connection error').addClass('err');
});Q2:您将如何使用myEvent和request来显示更详细的错误消息?
发布于 2010-04-07 02:38:43
Q1。您可以像这样使用.ajaxError():
$(document).ajaxError(function() {
$('#msg').text('Connection error').addClass('err');
});...or如果#msg元素始终存在,则可以执行以下操作:
$('#msg').ajaxError(function() {
$(this).text('Connection error').addClass('err');
});Q2。您可以使用ajaxError传入的处理程序的参数,它使用以下格式:handler(event, XMLHttpRequest, ajaxOptions, thrownError),如下所示:
$(document).ajaxError(function(event, request, options, error) {
$('#msg').addClass('err')
.text('Connection error: ' + error + ' when connecting to ' + options.url);
});注意:在以前的jQuery版本中,这将通过$.ajaxError()完成,因为1.7不再是这种情况,您需要将它附加到您想要它的jQuery对象,或者如果您不关心特定的元素,则将其附加到document。
https://stackoverflow.com/questions/2587262
复制相似问题