Сталкивался с такой проблемой.
Решилось запретом двойного нажатия на сабмит вот так:
$.ajax({
type: 'POST',
url: addressForAjax,
data: data,
beforeSend: function(data) {
form.find('input[type="submit"]').attr('disabled', 'disabled');
$('.form_box_preloader').fadeIn(200);
},
complete: function(data) {
form.find('input[type="submit"]').prop('disabled', false);
$('.form_box_preloader').fadeOut(200);
}
});
После отправки кнопке возвращается "кликабельность". Все работает как часы.
Естественно это не весь код, а только та часть, которая отвечает за отключение и включение функции отправки по нажатию на сабмит. Попробуйте