Я написал основную систему комментариев, которая представляет собой простую форму для записи в базу данных, и она также использует ajax.Остановить запрос ajax от публикации данных до получения ответа?
Проблема в том, что если я введу свое сообщение, а затем отправлю спам/ключ ввода, он, кажется, складывается, а затем все записывается в базу данных несколько раз.
Мой Аякс, как так:
$(document).ready(function(){
$(document).on('submit', '.addcomment', function() {
var $targetForm = $(this);
$.ajax({
type: "POST",
url: "process/addcomment.php",
data: $targetForm.serialize(),
dataType: "json",
success: function(response){
if (response.databaseSuccess == true) {
$("#container").load("#container");
$targetForm.find('#addcommentbutton').attr("disabled", true);
}
else {
$ckEditor.after('<div class="error">Something went wrong!</div>');
}
}
});
return false;
});
});
Кнопка представить действительно стала инвалидом, но форма еще может быть введена с помощью ввода кнопки клавиатуры или даже еще с массовым спамом на кнопке отправки (которая должен быть отключен)
Есть ли способ 100% отключить эту форму с помощью jquery, пока не будет получено сообщение об успешном JSON?
Больше коментарий просто дайте мне знать!
Вы можете использовать JQuery представить событие и проверить, чтобы увидеть, если переменная с вашего AJAX было установлен на «true», и если он затем разрешит submit(); проходить через. –
, вы отключите кнопку отправки слишком поздно, для одного. –