处理复选框Angular2上的更改

时间:2017-06-20 08:19:05

标签: angular checkbox angular2-forms

我有复选框,我想在其上使用(change)。默认为“已选中”,但点击后我想要清除输入文本“激活密钥”。重新检查后,我想生成guid并再次添加到输入。如果选中或不选中复选框怎么办?

<div class="checkbox">
    <label>
       <input type="checkbox" checked (change)="handleChange($event)" > 
           Generate key
    </label>
</div>

TS

handleChange(e) {
    var isChecked = e.isChecked;
    if (isChecked) {
        this.gatewayForm.patchValue({ 'activationKey': this.guid() });
    }
    else {
       this.gatewayForm.controls['activationKey']
           .setValue('', { onlySelf: true });
    }
}

1 个答案:

答案 0 :(得分:5)

您可以通过e.target.checked

获取复选框状态
handleChange(e) {
  var isChecked = e.target.checked;
  ...
}