Angular 2 Checkbox preventDefault

jon*_*son 1 checkbox angular

我正在制作一个Bootstrap复选框下拉列表,选项包含在<a>处理点击的标签中,但我也有一个<input type="checkbox">a-tag内部.

当用户按下实际复选框而不是<a>元素时,我的问题就出现了.两者都被点击,发生了一些冲突.复选框检查状态应该反转但不是.

在Angular1中,只需在复选框上单击使用preventDefault(),但在我的angular2-test中,它会阻止复选框更新其状态.

需要帮助我做错了什么.

<ul>
    <li *ngFor="#option of options">
    <a href="" role="menuitem" tabindex="-1" (click)="setSelected($event, option)">
        <input type="checkbox" [checked]="isSelected(option)" (click)="checkboxClick($event)" /> {{ option.name }}
    </a>
  </ul>
Run Code Online (Sandbox Code Playgroud)

Plunker:https://plnkr.co/edit/6D5GQ9mnaMALNnPzf5Na

单击右侧的链接时单击复选框时,我想要相同的行为.

Gün*_*uer 8

只需添加;false到事件处理程序表达式.返回错误的结果preventDefault()

<input type="checkbox" [checked]="isSelected(option)" (click)="checkboxClick($event);false" /> {{ option.name }}
Run Code Online (Sandbox Code Playgroud)

如果你返回false,你会得到相同的效果 checkboxClick()