Форма не предотвратит ошибку после первой - PullRequest
0 голосов
/ 18 июня 2019

Я попытался сделать формулу с разными шагами в моем codeigniter с проектом bootstrap4.

поэтому я создал форму:

<form id="myform" class="myform" action="#">
    ...
    <button type="submit">submit</button>
</form>

Это мой код JS:

$(document).ready(function(){
$(".myform").on("submit", function (event) 
    {
        console.log('submit .myform');
        event.preventDefault();
        ajax_call($(this).serialize(),'myform');
    });
});

"ajax_call" - это функция для отправки данных и обработки результата - эта функция уже отлично работает.

Моя проблема немного проще, но я не могу ее решить.

Если я отправлю первую форму, в консоли отобразится сообщение журнала "submit .myform", форма не будет отправлена, а ajax_call-function запущен.

В результате я получаю ту же самую (новую) формулу с некоторыми сообщениями об ошибках из проверки.

Поэтому, если я захочу снова отправить эту форму, форма будет отправлена, и код "$(".myform").on("submit", function (event) ..." не будет работать.

может быть, это проблема делегирования? Но для этого я использую ".on" в коде js!?

Что я делаю не так?

1 Ответ

1 голос
/ 18 июня 2019

Вы не выполняете делегирование, вам нужно, чтобы ваш первый селектор связывался со статическим элементом, а вторым параметром для функции on должен быть ваш селектор форм

$("body").on("submit", ".myform", function (event) 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...