Angular форма не отправлена - PullRequest
0 голосов
/ 07 апреля 2020

У меня есть такая форма (упрощенно):

<form [action]='endpoint' method="post" (submit)="submitConfirmation($event)">
  <button type="submit">Submit</button>
</form>

И в контроллере:

submitConfirmation(event) {}

Когда я нажимаю кнопку отправки, метод submitConfirmation запускается, но форма не отправляется! Я пробовал полсотни различных комбинаций, и единственный способ сделать это - это сделать:

<form [action]='endpoint' method="post" #confirmForm (ngSubmit)="submitConfirmation($event)">
  <button type="submit" (click)="confirmForm.submit()">Submit</button>
</form>

Что я не видел нигде в документации ... Что происходит Вот? Все, что я действительно хочу сделать, это контролировать, будет ли форма отправлена ​​или нет (например, event.preventDefault() или return false), но ничто не работает так, как должно!

1 Ответ

0 голосов
/ 07 апреля 2020

решением является изменение атрибута type кнопки на button с submit. Поведение кнопки по умолчанию при нажатии - попытка отправить форму в любое установленное formaction. Ваш дополнительный обработчик кликов пытается переопределить это поведение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...