我正在使用类似于角度提供的动态表单example的代码动态呈现反应式表单,但尝试实现复选框。当复选框值保留为空并且提交表单时,cb控件值为null,这很好:
如果我然后检查它,该值将成为模板中绑定的值,在本例中为静态/硬编码“true”:
到目前为止,这么好,但如果我取消选中复选框并重新提交,它仍然具有“true”的值 - 什么? (是的,我在取消选中框后点击了提交按钮 - 几次)
以下是呈现表单的模板:
<div [formGroup]="form">
<label [attr.for]="question.key">{{question.label}}</label>
<div [ngSwitch]="question.kind">
<input *ngSwitchCase="'textbox'"
[formControlName]="question.key"
[id]="question.key"
[type]="question.kind">
<input *ngSwitchCase="'checkbox'"
[formControlName]="question.key"
[id]="question.key"
[type]="question.kind"
[value]="true">
</div>