未选中某些或所有复选框时显示消息

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了未选中某些或所有复选框时显示消息相关的知识,希望对你有一定的参考价值。

我在此页面上具有多个复选框,并且当单击时会显示一个元素。

我有这个简化的版本以简单地显示它:

<!DOCTYPE html>
<html>
<body>

<p>Display some text when the checkbox is checked:</p>

Checkbox 1: <input type="checkbox" id="check1"  onclick="box1()"><br>
Checkbox 2: <input type="checkbox" id="check2"  onclick="box2()">

<p id="fill">No boxes are checked</p>

<p id="text" style="display:none">Checkbox1 is CHECKED!</p>
<p id="text2" style="display:none">Checkbox2 is CHECKED!</p>


<script>
function box1() {
  var checkBox = document.getElementById("check1");
  var text = document.getElementById("text");
  var fill = document.getElementById("fill");
  if (checkBox.checked == true){
      text.style.display = "block";
      fill.style.display = "none";
  } else {
      text.style.display = "none";
      fill.style.display = "block";
  }
}
</script>
<script>
function box2() {
  var checkBox = document.getElementById("check2");
  var text = document.getElementById("text2");
  if (checkBox.checked == true){
    text.style.display = "block";
    fill.style.display = "none";
  } else {
     text.style.display = "none";
     fill.style.display = "block";
  }
 }
</script>

</body>
</html>

我的问题是,如图所示,该文本甚至显示一个复选框。我该如何有效地做到这一点?谢谢!

enter image description here

答案

您忘记了在第二个复选框中通过document.getElementById定义填充。现在,与第二个复选框交互时,您将禁用第一个复选框的填充。我认为这引起了一些问题。

以上是关于未选中某些或所有复选框时显示消息的主要内容,如果未能解决你的问题,请参考以下文章

选中复选框时jQuery隐藏div,未选中时显示

Vuetify:复选框在未选中时显示状态已选中,反之亦然

选中复选框时显示隐藏字段?

iCheck 检查复选框是不是被选中

如果选中某些复选框,则 jquery 验证表单输入

在纯js中选中和取消选中复选框时添加不同的确认消息