Как выполнить условную валидацию в html угловой форме
У меня есть форма, где я хочу реализовать проверку MAXLENGTH, только если значение не равно 0.
Так что если parameter.valueMaxlength === 0 { then dont execute maxlength validation }
Есть ли способ написать эту логику в HTML- файл.
<mat-form-field *ngSwitchCase="'TEXTBOX'" class="example-full-width">
<input
matInput
[placeholder]="parameter.displayName"
[formControlName]="parameter.id"
[id]="parameter.id"
[type]="parameter.dataType"
[maxlength] = "parameter.valueMaxlength"
/>
</mat-form-field>
1 ответ
Решение
Попробуйте следующее, используя троичный оператор с [attr.maxlength]
:
<input
matInput
[placeholder]="parameter.displayName"
[formControlName]="parameter.id"
[id]="parameter.id"
[type]="parameter.dataType"
[attr.maxlength]="parameter.valueMaxlength === 0 ? null : parameter.valueMaxlength"
/>
maxLength
не будет отображаться, если то, что передано, равно 0
в противном случае он будет отображаться со значением, равным тому, что было передано.
Вот пример в действии.
Надеюсь, это поможет!