В вашем коде много синтаксических ошибок. Вот небольшой фрагмент, который я использую, когда $ .ajaxing. Я бы предложил интегрировать этот код (вы можете убрать вещи из очереди запросов, если хотите), а затем, если у вас все еще возникают проблемы и / или возникают «ошибки базы данных», go вперед и обновить ваш вопрос, включив в него спецификацию c ошибка, которую вы получаете из базы данных.
Если у вас возникают проблемы с поддержанием состояния (и вы теряете фрагменты данных), возможно, сохраните их в скрытых входах или с помощью атрибута «data» (см. jquery $ .data).
Дайте мне знать, если это имеет смысл и удачи. :)
//Set this var to max requests in queue.
var ajaxMax = 5;
var ajaxActive = 0;
$( document ).ajaxStart(function() {
ajaxActive++;
document.ajaxRunning = ajaxActive > 0;
document.ajaxQueueFull = ajaxActive > ajaxMax;
});
$(document).ajaxStop(function() {
ajaxActive--;
document.ajaxRunning = ajaxActive > 0;
document.ajaxQueueFull = ajaxActive > ajaxMax;
}
var request = $.ajax({
type: 'POST',
url: 'someurl',
data: myDataObj,
success: function(result){}
});
while(request === null && (request.readyState < 1 || request.readyState > 4)) {
if (document.ajaxQueueFull) {
//abort existing requests
$.each(request as v) {
v.abort();
}
}
pendingAjax.push(request);
}
$.when.apply($, pendingAjax).done( successCallback ).fail( failCallback)