#javascript #jquery
#javascript #jquery
Вопрос:
у меня есть отправка кода с помощью preventDefault. это мой код
//submit terima barang
$("form.form_terima").submit(function (event) {
if (confirm('Submit Terima Barang ?')) {
$(".loader").show();
//disable tombol submit supaya tidak reload
event.preventDefault();
var formData = new FormData($(this)[0]);
$.ajax({
url: 'po_req/po_req_crud.php', //type='add_terima'
type: 'POST',
data: formData,
async: false,
cache: false,
contentType: false,
processData: false,
success: function (data) {
console.log(data);
//action if success
}
});
return false;
}
});
но это не работает. как это решить? спасибо, приятель 🙂
Комментарии:
1. Как именно это не работает ?
Ответ №1:
В вашем коде event.preventDefault()
он будет запускаться только тогда, когда пользователь нажмет «ОК» / «Да». Если пользователь нажал «Нет», то форма будет отправлена.
Вы должны добавить event.preventDefault()
внешнюю часть if
блока, чтобы он работал так, как вы ожидаете.
$("form.form_terima").submit(function (event) {
if (confirm('Submit Terima Barang ?')) {
$(".loader").show();
//disable tombol submit supaya tidak reload
var formData = new FormData($(this)[0]);
$.ajax({
url: 'po_req/po_req_crud.php', //type='add_terima'
type: 'POST',
data: formData,
async: false,
cache: false,
contentType: false,
processData: false,
success: function (data) {
console.log(data);
//action if success
}
});
}
// prevent default regardless of user's response
event.preventDefault();
return false;
});
Комментарии:
1. Спасибо, Iblamefish, это работа, пока я
submit
не забыл вставить<form></form>
#lol. И ваше `event.preventDefault();`, помещенное снаружиif
, полезно. большое спасибо