基本上正如标题所说 - 我正在尝试使用一个作为 onclick 固定到该复选框的函数来切换复选框的 checked
值,并接受此
<input type="checkbox" onclick="toggleCheckbox(this)" />
<script>
function toggleCheckbox(e)
{
e.checked = !e.checked;
}
</script>
但是为什么新值不是前一个值的否定呢?它总是 T/F/T/F 但它应该是 T/F/F/T/T/F/F 作为控制台输出
<input type="checkbox" onclick="toggleCheckbox(this)" />
<script>
function toggleCheckbox(e)
{
console.log(e.checked)
e.checked = !e.checked;
console.log(e.checked)
}
</script>
最佳答案
您不需要设置任何内容,因为默认情况下 html 将负责检查。如果您想要任何其他逻辑,例如 ajax、过滤,您可以使用 e.checked
并用它做您想做的事情。
<input type="checkbox" id="checkbox" onclick="toggleCheckbox(this)" />
<script>
function toggleCheckbox(e)
{
console.log(e.checked)
}
</script>
关于javascript - 以 this 作为参数的复选框开关不会保存更改 .checked 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54990408/