Angular2,点击按钮

时间:2016-06-16 16:27:54

标签: angular

我有一个angular2应用程序,我希望根据用户操作动态检查或取消选中。

这是我的功能,

  • 我有一个复选框,点击此复选框后我要求用户输入
    他/她的电子邮件并按下提交按钮。用户按下后 提交按钮我会显示一个弹出窗口,说明您的电子邮件已保存。和我 隐藏文本框和提交按钮。随之而来的我想 取消选中用户在第一个位置选中的复选框以进入 电子邮件。

当我尝试使用此

document.getElementById("checkBoxID").checked = false;

我收到编译错误

  

错误:(33,60)TS2339:“HTMLElement”类型中不存在“已检查”属性。

我在某个地方进行了研究,发现这个属性可以被“选中”而不是“已检查”,但即使这样也行不通。

我可以使用* ngIf使用布尔值的变通方法,并在我的组件中写入两个复选框,一个用'checked',一个用'unchecked',并根据布尔值相应地渲染它们并保持设置单击按钮时的布尔值,但我相信这将是一个肮脏的解决方案。

Angular2肯定会有更简单的事情,我在这里缺少:(

1 个答案:

答案 0 :(得分:7)

两种可能的方式

  <button (click)="cb.click()">toggle</button>
  <input type="checkbox" #cb>
      
  <button (click)="isChecked = !isChecked">toggle</button>
  <input type="checkbox" [(ngModel)]="isChecked">

Plunker example