如果用户在Angular change事件中提示取消,则如何取消选中HTML框

时间:2018-05-03 17:43:46

标签: angular

目标:用户点击一个复选框,启动我的功能checkedAmPrompt。如果用户点击提示取消,则取消选中他们选中的复选框。如果他们点击OK,它将按计划继续并保持检查。目前它的功能很好,除了我找不到取消选中框的方法。

以下相关代码:

webpage.component.html - 请注意,这是在一个表格中,每个行都有一个复选框。

<td><input type="checkbox" class="form-control" id="checkedAm" (change)="checkedAmPrompt($event)"></td>

webpage.component.ts

// Prompt to confirm checkbox action
checkedAmPrompt(event: any) {
  const confirm = prompt('If you are certain that what you are doing is correct please type CONFIRM to continue.');

  // What to do if user selects cancel to pop-up, otherwise user confirms action
  if (confirm == null) {
    console.log('User hit cancel.');
    // ***** WANT TO PUT LOGIC TO UNCHECK HERE *****
  } else if (confirm.toLowerCase() === 'confirm') {
    // submit the changes if they type in confrim
    console.log('changes submitted!')
  } else {
    // if they misspell confirm let them know
    console.log('Incorrect spelling.');
  }
}

取消选中HTML框的逻辑将替换// ***** WANT TO PUT LOGIC TO UNCHECK HERE *****

请注意,我没有使用JavaScript,我的HTML文件只包含HTML / Angular,所有功能都由组件打字稿引用。我对一切都很陌生,所以如果这是一个糟糕的选择,请原谅我。

3 个答案:

答案 0 :(得分:1)

您可以使用ng-checked="(var bool or function that return bool)"

答案 1 :(得分:0)

只需使用document.getElementById('checkedAm').checked = false,这有效吗?

答案 2 :(得分:0)

弄清楚我需要做什么。

HTML:

[checked]="checkCheck()"

组件:

checkCheck () {
return true;
}