【发布时间】:2019-05-25 16:25:33
【问题描述】:
在我的 Angular 6 应用程序中,我正在制作一个反应形式,
HTML
<form [formGroup]="form">
<h2>Click the add button below</h2>
<button (click)="addCreds()">Add</button>
<div formArrayName="credentials" >
<div *ngFor="let creds of form.get('credentials').controls; let i = index"
[formGroupName]="i" style="display: flex">
<select formControlName="action">
<option *ngFor="let option of options" value="{{option.key}}">
{{option.value}}
</option>
</select>
<input placeholder="Name" formControlName="name">
<div *ngIf="creds.value.action=='set' ||
creds.value.action=='go'">
<input placeholder="Label" formControlName="label">
</div>
</div>
</div>
</form>
这里我用过
<div *ngIf="creds.value.action=='set' || creds.value.action=='go'">
<input placeholder="Label" formControlName="label">
</div>
如果条件为真,将显示字段label,否则将不显示。
但我只需要禁用该字段并且不应该完全删除它..
我已经尝试过了,
<input [disabled]="creds.value.action != 'set' ||
creds.value.action != 'go' " placeholder="Label" formControlName="label">
但它不起作用。
Stackblitz 与 *ngIf https://stackblitz.com/edit/angular-form-array-example-25y1ix
Stackblitz 已禁用 https://stackblitz.com/edit/angular-form-array-example-laftgu
如果选定的action(第一个下拉菜单)值为wait,请帮助我如何禁用label 字段。
【问题讨论】:
标签: javascript angular typescript angular6 angular-reactive-forms