#angular #angular-material #mat-dialog
Вопрос:
У меня есть кнопка отправки и отмены в моем диалоговом окне, когда я нажимаю на кнопку отправки, проверка работает, но я хочу, чтобы при нажатии на кнопку отмены форма закрывалась без необходимости проверки…Теперь, когда я нажимаю на кнопку отмены, проверка срабатывает, и во второй раз форма закрывается.
HTML-код:
<button mat-button (click)="closeDialog()" mat-flat-button>Cancel</button>
код ts:
closeDialog(){
this.dialogRef.close({event:'Cancel'});
}
Как я могу закрыть форму одним щелчком мыши?
Спасибо…
Комментарии:
1. Трудно сказать без фактического воспроизведения вашего кода в stackblitz. Вы упоминаете проверку и отправку, поэтому я предполагаю, что вы используете
<form>
. Обратите внимание, что по умолчанию все кнопки в форме будут иметь типsubmit
. Если ваша кнопка закрытия находится внутри формы, попробуйте применитьtype="button"
к ней.
Ответ №1:
вы можете использовать mat-dialog-close
в своем теге кнопки, не нужна дополнительная функция
<button mat-button mat-dialog-close mat-flat-button>Cancel</button>
Комментарии:
1. Спасибо, я использовал ваш код, но мне все равно нужно два клика, чтобы закрыть диалоговое окно. Вторая ссылка , которую вы отправили , выдает ошибку … Спасибо, что проверили
2. Я исправил вторую ссылку, пожалуйста, добавьте больше кода к вашему вопросу для лучшей помощи. @Hodaja’fari