#angular
Вопрос:
Я разработал форму, управляемую шаблоном , в которой я использовал поля ввода, такие как mat-input
, mat-select
, mat-datepicker
и mat-select
.
Каждый из них встроен в а mat-field-form
. Я хочу отключить их в зависимости от условия. Я думаю , что если я отключу mat-field-form
, все они будут отключены, или, как каждый из входов atrr.disable
, которые нужно отключить?
Можно ли это сделать? С другой стороны, раньше я #actionsForm="ngForm"
«требовал» их, но только mat-input
работы и другие входы не слушают «требуется».
Любые зацепки, пожалуйста.
Комментарии:
1. не могли бы вы предоставить небольшую демонстрацию в stackblitz.com или какой-нибудь код здесь, который поможет
Ответ №1:
В .html
использовании [disabled]
атрибут, подобный этому:
<mat-form-field>
<input matInput [disabled]="isDisabled"></input>
<textarea matInput [disabled]="isDisabled"></textarea>
</mat-form-field>
В .ts
isDisabled
переменной set true
или false
в соответствии с условием:
//do something like variable declaration and condition checking
this.isDisabled = true;
Комментарии:
1. Спасибо, я применю вашу рекомендацию как можно скорее и сообщу вам результат.
2. извините, я подал заявление. [отключено]=»cond» и получено сообщение об ошибке: поле формы мата не имеет [отключено] ввода!
3. Это моя вина! да,
mat-form-field
не[disabled]
имеет атрибута. Таким образом, вы должны использовать[disabled]
атрибут с, например, матИнпут внутриmat-form-field
. Ответ редактируется вообще, не уверен, соответствует ли это вашим требованиям. Спасибо4. Спасибо, это работает для выбора коврика, области текста и выбора даты? Как насчет выбора мата, текстовой области и выбора даты?
5. Это вопрос для меня, элементы textarea, datepicker и select, которые могут быть ключевыми элементами для формы, не работают с attr.требуется! Вы можете ответить на него?