sma*_*use 2 checkbox radio angular2-forms angular2-formbuilder angular
我正在使用ReactiveFormsModuleAngular2来创建包含表单的组件.这是我的代码:
foo.component.ts
constructor(fb: FormBuilder) {
this.myForm = fb.group({
'name': ['', Validators.required],
'surname': ['', Validators.required],
'gender': []
});
}
Run Code Online (Sandbox Code Playgroud)
foo.component.html
<div class="two fields">
<div class="four wide field">
<label>Name*</label>
<input type="text" [formControl]="myForm.controls.name"/>
</div>
<div class="four wide field">
<label>Surname*</label>
<input type="text" [formControl]="myForm.controls.surname"/>
</div>
</div>
<div class="inline fields">
<label for="gender">Gender</label>
<div class="field">
<div class="ui radio checkbox">
<input type="radio" name="gender" checked="" tabindex="0" class="hidden" [formControl]="myForm.controls.gender">
<label>Male</label>
</div>
</div>
<div class="field">
<div class="ui radio checkbox">
<input type="radio" name="gender" tabindex="0" class="hidden" [formControl]="myForm.controls.gender">
<label>Female</label>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
上面发布的代码不起作用:如果我点击两个单选按钮中的一个,它总是选择第二个,我无法更改它.
FormControl与radio(或checkbox)一起使用的正确方法是什么?
对于字符串值以外的其他值,您可以使用[value]属性,并且[checked]属性也应该用于初始值.
export enum Gender {
FEMALE = 1,
MALE = 2
}
export class SampleGenderComponent implements OnInit {
public form: FormGroup;
public Gender = Gender;
constructor(fb: FormBuilder) {
this.form = fb.group({
gender : [
Gender.FEMALE,
[]
]
});
}
}
Run Code Online (Sandbox Code Playgroud)
<div class="inline fields">
<label for="gender">Gender</label>
<div class="field">
<div class="ui radio checkbox">
<input type="radio" name="gender" [value]="Gender.MALE" [checked]="form.controls['gender'].value === Gender.MALE">
<label>Male</label>
</div>
</div>
<div class="field">
<div class="ui radio checkbox">
<input type="radio" name="gender" [value]="Gender.FEMALE" [checked]="form.controls['gender'].value === Gender.FEMALE">
<label>Female</label>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6699 次 |
| 最近记录: |