在Angular中更改被动形式的隐藏字段的值

时间:2017-09-13 00:06:56

标签: forms angular

我有一个被动表单,它有几个不同场景的相同(两个)输入文本字段。当用户从列表中选择场景选项时,显示该表单并且使用所选场景的关键字更新该表单内的隐藏字段,例如,

<input formControlName="action" type="hidden" value="{{theaction}}">

我的问题是,当该字段正在更新时(即我可以在显示代码中看到它),该值在提交时似乎与表单绑定(即字段为到达服务器时空了。)

我在这里错过了什么反应形式?

感谢/汤姆

1 个答案:

答案 0 :(得分:0)

最近,我需要包含有关反应形式(例如ID)的信息,这是我的数据模型的某些属性,不应在UI上公开。我为该属性创建了一个FormControl,该属性允许我存储和操作该值,但是没有在模板中创建相应的<input>。像魅力一样工作。例如

profileForm = this.fb.group({
  id: [null],                              //hidden field
  firstName: ['', Validators.required],
  lastName: ['']
});

在模板中

<form [formGroup]="profileForm">

  First Name: <input type="text" formControlName="firstName" />

  Last Name:  <input type="text" formControlName="lastName" />

  [...]

</form>