<mat-checkbox (change)="handleProductClick(children, $event)" [(ngModel)] = "children.selected"
[name]="children.grpId" [id]="children.id"></mat-checkbox>
handleProductClick(selectedProd : Product, event: any)
{
event.stopPropagation();
}
如果我使用click函数而不是change,它工作得很好。虽然我不能使用click。我必须坚持改变。有没有办法从change函数中调用stopPropagation?如果不是,我还能做些什么来停止事件传播?
发布于 2018-08-30 10:29:45
我把它修好了。必须同时使用checkbox上的单击和更改。我之前已经试过了。唯一的区别是我在click方法中调用了一个函数,但它从未被调用过。如果你在模板中调用$event.stopPropagation on click方法,它会工作得很好。真奇怪。下面的答案解决了我的问题。Angular 2 prevent click on parent when clicked on child
<mat-checkbox (change)="handleProductClick(children, $event)"[checked]="children.selected" (click)="$event.stopPropagation()" [name]="children.grpId" [id]="children.id"></mat-checkbox>
https://stackoverflow.com/questions/52081760
复制相似问题