【发布时间】:2021-12-30 13:44:26
【问题描述】:
单击某个checkbox 时我有几个复选框,我想显示一些内容(在我的情况下,这是一个简单的块示例)当单击另一个复选框时,前一个块应该隐藏并显示新块,我认为要解决此问题,您需要应用 forEach 复选框为我工作,但我无法显示块
<div class="toggle-two">
<div><small>content 1</small></div>
<label class="switch-label">
<input class="switch" id="switch-novice" value="switch-novice" type="checkbox"/>
<span class="slider round"></span>
</label>
</div>
<div class="toggle-three">
<div><small>content 2</small></div>
<label class="switch-label">
<input class="switch" id="switch-intermediate" value="switch-intermediate" type="checkbox"/>
<span class="slider round"></span>
</label>
</div>
<div class="toggle-four">
<div><small>content 3</small></div>
<label class="switch-label">
<input class="switch" id="switch-expert" value="switch-expert" type="checkbox" />
<span class="slider round"></span>
</label>
</div>
<!-- ------------------------------------------- -->
</div>
<div>
<div class="content c1"></div>
<div class="content c2"></div>
<div class="content c3"></div>
</div>
**script.js**
let uploadPres = document.getElementsByClassName("content");
$(".content").each(function (index, value) {
$(`.switch:not([checked])`).on("change", function (param1, param2) {
$(".switch").not(this).prop("checked", false);
if ($(".switch").is(":checked")) {
console.log(this.checked);
}
});
});
最初一个名为 content 的类默认有display: none
【问题讨论】:
-
如果您选中了一个复选框,并且您选中了另一个复选框,那么第一个复选框是否应该保持选中状态,但它显示的块应该被隐藏?此外,您可以使用Stack Snippets 在 Stack Overflow 上提供一个可运行的示例,这样人们就不必去其他网站了。
标签: javascript jquery arrays checkbox