JavaScript — возврат диалогового окна подтверждения перед отправкой формы не работает

Я пытаюсь заставить веб-сайт вернуть диалог подтверждения перед отправкой формы, но по какой-то причине он не работает. Он вернул диалоговое окно подтверждения, но после нажатия «да» не отправил форму. Что я делаю неправильно?

<?php

echo "<form action = 'delete.php' method = 'POST'>
<label id = 'delete' onclick = \"return confirm('Are you sure?');this.form.submit()\"> delete </label>
</form>
";

?>

Замечания:

Вместо использования input: submit я бы предпочел использовать метку onclick () вместе с диалоговым окном подтверждения. Это возможно? Благодарю.

0

Решение

onclick обработчик в вашем коде просто возвращает confirm результат диалога и игнорирует остальную часть кода (this.form.submit());
Я бы порекомендовал использовать внешнюю функцию в таком случае:

<?php

echo "<form action = 'delete.php' method = 'POST'>
<label id = 'delete' onclick = \"confirmSubmit(this);\"> delete </label>
</form>
";

?>

JS код:

function confirmSubmit(e){
var need_submit = confirm('Are you sure?');
if (need_submit) e.form.submit();
}
1

Другие решения

Других решений пока нет …