Javascript:如何在复选框中只选中一项
Javascript: How to check only one item in checkbox
请帮忙,我无法对只能选中1项的复选框进行编码。如有任何帮助,我们将不胜感激。感谢
Html
<input type="checkbox" name="<%=Name %>" onClick="return checkbox(this)" >
Javascript
function checkbox(a) {
var Count = 0;
if (a.checked)
{
Count = Count + 1;
}
if (Count == 2)
{
alert('choose One Please');
return false;
}
}
您在方法内部声明count,因此当您单击复选框时,它将始终初始化为0。因此,全局声明count并保持计数。
var NewCount = 0;// global declaration
function KeepCount(a){
if (a.checked){
NewCount = NewCount + 1;
}else{
NewCount = NewCount - 1;
}
if(NewCount>1){
alert('Pick Just One Please');
return false;
}
}
更新:
如果您不想全局添加变量,另一种方法是:
HTML
Group 1
<input type="checkbox" value="1" name="test[1][]" onclick="addClassCheck(this)"/>
<input type="checkbox" value="1" name="test[1][]" onclick="addClassCheck(this)"/>
<input type="checkbox" value="1" name="test[1][]" onclick="addClassCheck(this)"/>
<br/>
Group 2
<input type="checkbox" value="1" name="test[2][]" onclick="addClassCheck(this)"/>
<input type="checkbox" value="1" name="test[2][]" onclick="addClassCheck(this)"/>
<input type="checkbox" value="1" name="test[2][]" onclick="addClassCheck(this)"/>
JavaScript
function addClassCheck(element){
if(element.checked){
element.classList.add("marked");
}else{
element.classList.remove("marked");
}
if(document.getElementsByClassName("marked").length>1){
alert("Please select only one check box");
element.checked=false;
element.classList.remove("marked");
}
}
Fiddle演示
将您的复选框分组为
<input type="checkbox" class="radio" value="1" name="test[1][]" />
<input type="checkbox" class="radio" value="1" name="test[1][]" />
<input type="checkbox" class="radio" value="1" name="test[1][]" />
<br/>
Group 2
<input type="checkbox" class="radio" value="1" name="test[2][]" />
<input type="checkbox" class="radio" value="1" name="test[2][]" />
<input type="checkbox" class="radio" value="1" name="test[2][]" />
查询
$("input:checkbox").click(function() {
if ($(this).is(":checked")) {
var group = "input:checkbox[name='" + $(this).attr("name") + "']";
$(group).prop("checked", false);
$(this).prop("checked", true);
} else {
$(this).prop("checked", false);
}
});
演示
相关文章:
- 如何在javascript中获取一组复选框值
- 在一组复选框中,一次只允许选择一个
- 使用javascript选中“计算总数一次”复选框
- 如何引用表单元格中任意给定行的一组复选框
- 将两个数组绑定到一组复选框中 - angularjs
- 如何使用jQuery/Javascript检查用户是否从一组复选框中选中了至少一个复选框
- 我如何创建一个函数来选择一组复选框的子集
- 验证至少一个子复选框,对应于复选框数组的选中元素
- Jquery复选框分组 - 单击至少一个子复选框时取消选中父项,选中所有子复选框时选中父项
- Javascript:同时启用 2 个文本框,单击一次复选框
- 在提交之前将一堆复选框输入附加到表单,然后隐藏它们
- 使用 javascript 检查是否已选中一组复选框
- 在一组复选框中的每个选定复选框上显示警报
- Ember循环遍历一组复选框并获取选中的项目
- 如果有一个子项未选中,则取消选中父项复选框
- 如何在选中另一个复选框时取消选中一组复选框
- 如何使用值设置一组复选框
- 如何将一组复选框名称发布到数组中
- 如何使用YUI3 AlloyUI验证一组复选框?
- 只计数一次复选框类