我正在对错误处理程序进行递归调用,通过在错误显示的模式中单击“#btnTryAgain”按钮时执行相同的ajax方法:
var deliverOrder = function(order) {
$.ajax({
type: 'GET',
url: 'order-updates.json?id='+order.attr("id")+'&value='+order.attr("value"),
dataType: 'json',
beforeSend:function(){
$('#sending').modal({
keyboard: false,
backdrop: "static"
});
},
success:function(data){
if(data.status == "OK"){
$('#sending').modal('hide');
order.closest('tr').addClass("success");
order.closest('tr').fadeOut(2000, function() {
// Animation complete.
$(this).remove();
});
//update topnav label
decreasePendingOrdersLabel(1);
}
},
error:function(){
$('#sending').modal('hide');
//modify the link for "Try again" button
$("#btnTryAgain").click(function(e){
e.preventDefault();
$('#sendingError').modal('hide');
deliverOrder(order);
});
//show error message
$('#sendingError').modal({
keyboard: false,
backdrop: "static"
});
}
});
};
这似乎导致了“太多递归”类型的错误。 我做错了什么? 谢谢!