JavaScript 持续检查复选框是否被选中

JavaScript Continously check if a checkbox is checked

持续检查复选框是否被选中的好方法是什么。

检查是否被选中。

我想创建一个间隔,但我不喜欢那样。

if(checkboxPencil.checked) 

看看所有现代浏览器都支持的onchange Event


如果选中该复选框,无论您想执行什么功能,您都可以从 onchange 事件处理程序执行。例如:

function changeStatus(o) {
  document.getElementById('status').innerText = o.checked;
}
<input id="check" type="checkbox" onchange="changeStatus(this)" />
<span id="status">false</span>

你基本上有两个选择:

  1. change 事件使用事件处理程序

  2. 使用setInterval或类似

  3. 投票

在这两者中,#1 是迄今为止更好的选择,除非您有充分的理由不使用该事件。

这是#1 的示例:

// The selector can be any valid CSS selector identifying the checkbox
document.querySelector("input[type=checkbox]").addEventListener("change", function() {
  console.log("New value is: " + this.checked);
}, false);
<label>
  <input type="checkbox">
  Checkbox
</label>