Mar*_*aug 9 checkbox typescript angular2-ngmodel ngfor angular
我正试图在我的ngFor内的复选框上设置默认值.这是我的复选框项目数组:
tags = [{
name: 'Empathetic',
checked: false
}, {
name: 'Smart money',
checked: true
}, {
name: 'Minimal help after writing check',
checked: false
}, {
name: 'Easy term sheet',
checked: true
}];
Run Code Online (Sandbox Code Playgroud)
这是我的HTML
<div class="form-group">
<div class="form-check" *ngFor="let tag of tags;">
<label class="form-check-label" for="tag{{tag.value}}">
<input
class="form-check-input"
type="checkbox"
id="tag{{tag.value}}"
name="tagOptions"
[(ngModel)]="tag.checked">
{{tag.name}}
</label>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
所需的结果是获得2个选中,2个未选中的框,但所有这些框都未选中.我也尝试了[checked] ="tag.checked"的不同变体,但它似乎没有做到这一点.
Mar*_*aug 17
这解决了我选中/取消选中复选框的问题,同时我仍然可以控制变量的变化.
HTML
<div class="form-group">
<div class="form-check" *ngFor="let tag of tags; let i = index;">
<label class="form-check-label" for="tag{{tag.value}}">
<input
class="form-check-input"
type="checkbox"
id="tag{{tag.value}}"
name="tagOptions"
(change)="changeCheckbox(i)"
[checked]="tag.checked">
{{tag.name}}
</label>
</div>
Run Code Online (Sandbox Code Playgroud)
.TS
changeCheckbox(tags, i) {
if (tags) {
this.tags[i].checked = !this.tags[i].checked;
}
}
Run Code Online (Sandbox Code Playgroud)
使用checked属性代替ngModel,
<div class="form-group">
<div class="form-check" *ngFor="let tag of tags">
<label class="form-check-label" for="tag{{tag.value}}">
<input
class="form-check-input"
type="checkbox"
id="tag{{tag.value}}"
name="tagOptions"
[checked]="tag.checked">
{{tag.name}}
</label>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
36294 次 |
最近记录: |