如何显示一个基于单选组的复选框组
HTML - How do I reveal a checkbox group based on radio group?
我想有一个html表单与所需的无线电组。如果选择了这个单选组中的一个特定选项,它将显示一个复选框组。这个复选框组只有在显示时才需要。我怎么能这么做?最好是纯HTML,但如果绝对必要,也可以使用javascript。
谢谢
应该这样做:
.checkbox-group {
display: none;
}
[type=radio]:checked + .checkbox-group {
display: block;
}
/*unneccessary*/
input { float: left;}
input[type=radio] { clear: both;}
<input type="radio" name="radio[]" value="val1">
<div class="checkbox-group">
<input type="checkbox" name="val1_checkbox[]" value="1"/>
<input type="checkbox" name="val1_checkbox[]" value="2"/>
<input type="checkbox" name="val1_checkbox[]" value="3"/>
</div>
<input type="radio" name="radio[]" value="val2">
<div class="checkbox-group">
<input type="checkbox" name="val2_checkbox[]" value="1"/>
<input type="checkbox" name="val2_checkbox[]" value="2"/>
<input type="checkbox" name="val2_checkbox[]" value="3"/>
</div>
<input type="radio" name="radio[]" value="val3">
<div class="checkbox-group">
<input type="checkbox" name="val3_checkbox[]" value="1"/>
<input type="checkbox" name="val3_checkbox[]" value="2"/>
<input type="checkbox" name="val3_checkbox[]" value="3"/>
</div>
您可以使用以下代码作为参考(HTML和Javascript):
window.onload = function() {
var rad = document.myForm.radioBtnNm;
var prev = null;
for (var i = 0; i < rad.length; i++) {
rad[i].onclick = function() {
if (this.checked == true) {
if (this.value == "check1") {
document.getElementById("checkboxDiv1").style.display = "none";
document.getElementById("checkboxDiv2").style.display = "block";
} else {
document.getElementById("checkboxDiv1").style.display = "block";
document.getElementById("checkboxDiv2").style.display = "none";
}
}
};
}
}
<form name="myForm" id="myForm">
<div id="radioDiv">
<input type="radio" name="radioBtnNm" value="check1">Show
Chckbox list 1<br> <input type="radio" name="radioBtnNm"
value="check2">Show Chckbox list 2<br>
</div>
<div id="checkboxDiv1" style="display: none">
<br> <label>Checkbox List 1</label> <br> <input
type="checkbox" name="checkbox1" value="one"> One<br> <input
type="checkbox" name="checkbox1" value="two"> Two<br> <input
type="checkbox" name="checkbox1" value="three"> Three<br>
</div>
<div id="checkboxDiv2" style="display: none">
<br> <label>Checkbox List 2</label> <br> <input
type="checkbox" name="checkbox2" value="three"> Three<br>
<input type="checkbox" name="checkbox2" value="two"> Two<br>
<input type="checkbox" name="checkbox2" value="one"> One<br>
</div>
</form>
相关文章:
- 如何在单击复选框后调用控制器方法
- 在GridView中,当单击复选框时,在网格的同一行中使用JavaScript将标签中的值添加到TextBox
- 在网页中单击复选框
- jquery表单验证复选框错误显示
- 单击复选框时显示日期选择器
- 选择全部单击复选框以及全部拒绝
- 在 Telerik RadGrid 中单击复选框时打开对话框窗口
- 在JS中单击复选框时显示总价
- 单击复选框时重定向
- 如何在单击复选框按钮时制作单选按钮
- 点击可选复选框时如何计算价格(使用贝宝支付表单)
- AngularJS:单选复选框模型不会改变
- 如何获取与提交表单上所选复选框相同行的文本元素
- 如何使用角度指令控制器动态单击复选框
- 如何通过单击复选框来显示或隐藏网络图表
- 单击复选框时的角度显示一个元素
- 复选框不能通过直接单击复选框来选中或取消选中
- 单击复选框时将此元素添加到收藏夹数组 + 后 Ajax 元素关系
- 单击复选框后未收到复选框事件
- 如何通过单击按钮添加多选复选框