检查和取消选中MD-复选框使用id从角2(或4)代码
问题描述:
<md-checkbox [align]="end" *ngFor="issueConfid in issueConfidences" (change)=onIssueConfidenceFilterChange(issueConfid)" id="favoriteCheck1.name">
{{issueConfid.name}}
</md-checkbox>
我想从我的角度2代码取消选中(或检查)在上述MD-复选框 例如:angular.getElementById('× “).uncheck(); 如果有任何问题请告诉我正确的方法检查和取消选中MD-复选框使用id从角2(或4)代码
答
您可以将checked
属性添加到模板,然后从组件内部更改其值。
模板
<md-checkbox [checked]="checkBoxChecked" [align]="end" *ngFor="issueConfid in issueConfidences" (change)=onIssueConfidenceFilterChange(issueConfid)" id="favoriteCheck1.name">
{{issueConfid.name}}
</md-checkbox>
组件
checkBoxChecked = false; // or true based on the need
checkCheckBoxProgrammatically(check: boolean) {
this.checkBoxChecked = check ? true : false;
}
编辑
如果没有工作,你可以使用ngModel
指令并为其分配`boolean'变量。
<md-checkbox [(ngModel)]="checkBoxChecked" [align]="end" *ngFor="issueConfid in issueConfidences" (change)=onIssueConfidenceFilterChange(issueConfid)" id="favoriteCheck1.name">
{{issueConfid.name}}
</md-checkbox>
值可以动态使用checkCheckBoxProgrammatically(true/false)
方法,其进而设置checkBoxChecked
属性来设置。
EDIT_2
<md-checkbox [(ngModel)]="issueConfid.checkBoxChecked" [align]="end" *ngFor="issueConfid in issueConfidences; let i = index" (change)=onIssueConfidenceFilterChange(issueConfid)" id="favoriteCheck1.name">
{{issueConfid.name}} <div (click)="reset(i)">Reset</div>
</md-checkbox>
<div (click)="resetAll()">Reset All</div>
有你issueConfidences
列表修改,以对其中的所有元素checkBoxChecked
财产,
this.issueConfidences = [ {..., checkBoxChecked: true}, ... ,{..., checkBoxChecked: false} ];
reset(index: number) {
this.issueConfidences[index].checkBoxChecked = false;
}
resetAll() {
this.issueConfidences.forEach((issueConfid) => { issueConfid.checkBoxChecked = false; });
}
这是否对你的工作?
这不起作用,因为checkBoxChecked值应该是一个应该绑定的变量 –
更新了我的答案。请看看是否有帮助。 – amal
谢谢你,我感谢你的帮助,但这里的问题是,我希望变量'checkBoxChecked'对于每次迭代应该是不同的(例如:issueConfid.id),以便我可以从其他事件中取消选中,例如:重置特定复选框,我想要像功能Ex的jquery; $(“#id”)。hide()或$(“#id”)。toggle()....或document.getElementById('id')。checked = true ... –