我已经尝试了一切我能想到的事情,当一个复选框改变状态但是我似乎无法让它工作时触发事件.
这是html
<div *ngIf="role?.ACTIVE_FLAG === 'Y'"> <div class="label"> Active Record </div> <input type="checkBox" (click)="toggleRoleActive()" checked> </div> <div *ngIf="role?.ACTIVE_FLAG === 'N'"> <div class="label"> Active Record </div> <input type="checkBox" (click)="toggleRoleActive()"> </div>
这是toggleRoleActive()
编辑:
toggleRoleActive(){ if(this.role_submit.ACTIVE_FLAG === 'Y'){ this.role_submit.ACTIVE_FLAG = 'N'; }else { this.role_submit.ACTIVE_FLAG = 'Y'; } }
我面临的挑战之一是,当我从服务器获取数据时,需要检查或不检查按钮.但是,如果他们想要停用或重新激活我希望它回复该复选框的角色.
我尝试使用[(ngModel)],(更改)和更简单的解决方案,但唯一触发任何事件的是[(ngModel)],但这样做我最终得到的是真/假而不是’Y’/ ‘N’.此外,如果我使用[(ngModel)],则无论我的服务器发送什么数据,都会始终将复选框标记为已选中.
您可以单独处理赋值和更改事件处理程序:
<input type="checkBox" [ngModel]="role?.ACTIVE_FLAG === 'Y' ? true : false" (ngModelChange)="toggleRoleActive()" checked>