0
У меня есть форма, в которой я хочу проверить данные и затем сохранить значения в переменной $ _SESSION перед отправкой формы. Пока мой код возвращает false, если проверка не выполняется, но отправляет форму до завершения AJAX. Я не уверен, как это сделать немного:JQuery/AJAX - Отправить форму после разрешения ajax
$('#c_form').submit(function() {
if ($("#del_f").val().length == 0) {
$("#del_f").addClass("alert-danger");
$("#del_f").focus();
return false;
} else {
$("#del_f").removeClass("alert-danger");
}
if ($("#del_s").val().length == 0) {
$("#del_s").addClass("alert-danger");
$("#del_s").focus();
return false;
} else {
$("#del_s").removeClass("alert-danger");
}
var update_session_delivery = "n=" + $("#del_f").val() + " " + $("#del_s").val();
var ajax1 = $.ajax({
url: 'work/update_session_delivery.php',
type: 'post',
data: update_session_delivery,
success: function(result) {}
});
$.when(ajax1).done(
function() {
//submit the form?
}
)
});
, как вы сделали это, это не возможно, чтобы делать то, что вы хотите. Вам нужно вызвать '$ ('# c_form'). Submit()' в 'success' части вашего ajax. BTW, вместо 'success' вы должны использовать' .done'. Но это просто вызовет цикл, вы не сможете перехватить подачу формы, задержать ее до завершения ajax и затем продолжить ее отправку. Что вам нужно сделать, это нажать кнопку, которую пользователь должен щелкнуть за пределами формы, чтобы вызвать ajax, а затем вызвать форму submit в части .done' ajax. – Styphon
Отлично. Я понятия не имею, почему я об этом не думал. Спасибо – Lee
Почему вы хотите сделать это? в чем вы нуждаетесь? – itzmukeshy7