角度6:禁用反应式表单上的输入而不禁用表单控制

时间:2018-08-09 06:43:07

标签: html angular angular-reactive-forms

我的一个表单需要特殊的行为,因为它需要在输入字段中显示一个值,但是它不应是可编辑的,但应随帖子一起发送到api。

我试图通过使用getRawValue()来解决此问题,但这只是为我提供了其中没有两个禁用字段的表单值。

是否有任何方法可以在不使用form.disable()函数的情况下禁用表单字段上的输入?

<mat-form-field *ngIf="!IsNewRecord()" fxFlex="calc(40% - 14px)">
    <input matInput placeholder="Veldnaam" formControlName="FieldName" disabled>
</mat-form-field>

使用disabled关键字仍然会导致该字段可编辑,如下所示:

Disabled keyword does not disable form field

我也不想禁用整个表单控件,因为以后在保存表单时,我将无法从Disabled元素获取值。

所以我基本上想要的是在视觉上将其禁用,但是反应形式仍然可以读取/更改显示的值

编辑: 当我禁用FieldName控件并使用getRawValue()来获取原始格式值时,会发生这种情况。

disabled

这是我执行相同操作但不禁用组件ts文件中的控件时发生的情况。

not disabled

如您在第一种情况下所见,FieldNamenull,在第二种情况下已填满。

0 个答案:

没有答案