我有一个角元素
<mat-checkbox class="btn-block"
labelPosition="before"
(change)="showOptions($event)"
(click)="makeJSON($event.checked,i,j,k)">
</mat-checkbox>
这里onchange(实际上给出了checkout的状态)正在做一些其他的任务,我想要点击事件的复选框状态(选中或取消选中)。
我已经尝试查看由click创建的对象,并且里面没有click对象,所以我如何检测是否选中了复选框。
答案 0 :(得分:31)
您可以使用
(change)="showOptions($event)"
(change)="makeJSON($event.checked,i,j,k)">
或
(change)="showOptions($event);makeJSON($event.checked,i,j,k)">
答案 1 :(得分:11)
使用您的(change)="showOptions($event)"
,您可以简单地获得如下状态:
showOptions(event:MatCheckboxChange): void {
console.log(event.checked);
}
答案 2 :(得分:4)
另一个解决方案是,您可以将模板引用变量与复选框一起使用,并将该变量传递给方法参数。
<mat-checkbox #checkbox (change)='showOptions(checkbox.checked)' value=''>all</mat-checkbox>
此处 #checkbox 引用包含所有与复选框相关的属性(例如值,选中的等)。 checkbox.checked (当前选中状态),将显示复选框的当前状态,为true和false。
答案 3 :(得分:4)
是的,您可以使用更改功能获取选中的事件 (change)=“ showOptions($ event);
在Ts
showOptions(event){
console.log(event.checked); //true or false
}
答案 4 :(得分:0)
whTax =false;
<mat-checkbox color="primary"
name="whTax" [checked]="false"
[(ngModel)]="whTax" id="IsHold"
(change)="onWHChange(whTax)">
W/H TAX
</mat-checkbox>
onWHChange(isWhChecked){
console.log('isWhChecked:>>', isWhChecked);
}