根据“数据”属性启用或禁用复选框
Enable or Disable checkbox based on Data attribute
我有一组具有data-groupid
和data-multichoice
属性的复选框。
第1组:data-groupid= "1" data=multichoice="0"
(10盒)
第2组:data-groupid= "2" data=multichoice="0"
(10盒)
如何一次禁用一个组中的所有框?
//function will catch any click on any checkbox with class=lvl
$('.lvl').click(function () {
//check if box was checked
if ($(this).is(":checked")) {
//check if data-attribute is NOT a multi-choice
if (!($(this).data("multichoice"))) {
//disable all checkboxes that have the same group-id
$(this).data("groupid") ... HELP HERE
}
}
});
由于您希望只允许从一个组中选择一个项目,单选按钮将是更好的选择。
但如果您仍然想使用复选框,那么您可以使用属性选择器(如)进行筛选
$('.lvl').click(function() {
//check if box was checked
if (this.checked) {
//check if data-attribute is NOT a multi-choice
if (!$(this).data("multichoice")) {
$('.lvl[data-groupid="' + $(this).data('groupid') + '"]').not(this).prop('checked', false);
}
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input class="lvl" type="checkbox" data-groupid="1" data-multichoice="0" />
<input class="lvl" type="checkbox" data-groupid="1" data-multichoice="0" />
<input class="lvl" type="checkbox" data-groupid="1" data-multichoice="0" />
<br />
<input class="lvl" type="checkbox" data-groupid="2" data-multichoice="0" />
<input class="lvl" type="checkbox" data-groupid="2" data-multichoice="0" />
<input class="lvl" type="checkbox" data-groupid="2" data-multichoice="0" />
<input class="lvl" type="checkbox" data-groupid="2" data-multichoice="0" />
var group1 = '1'
$('body').find("[data-groupid='" + group1 + "']").prop('checked',true);
试试这个
演示
var group1 = '1'
$('body').find("[data-groupid='" + group1 + "']").prop('checked',true);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" name="vehicle" data-groupid="1">I have a bike
<br>
<input type="checkbox" name="vehicle" data-groupid="2" >I have a car
<br>
<input type="checkbox" name="vehicle" data-groupid="1">I have a bike
<br>
<input type="checkbox" name="vehicle" data-groupid="2" >I have a car
<br>
<input type="checkbox" name="vehicle" data-groupid="1">I have a bike
<br>
<input type="checkbox" name="vehicle" data-groupid="2" >I have a car
<br>
相关文章:
- 如何使用javascript函数在gridview中按行启用/禁用复选框
- 单选按钮的验证(启用)&使用Jquery Optimization从复选框中选择submit按钮
- 如何使用复选框启用多个元素
- 如何使用复选框启用选项并通过本地存储进行保存
- 复选框启用/禁用在IE中不起作用
- 如何禁用基于另一个复选框启用复选框
- 使用动态添加的复选框启用/禁用按钮
- 组合框更改复选框启用
- 复选框启用和禁用文本区域
- 如何通过单击复选框启用输入
- 复选框启用 Onload 以显示其他元素
- 为什么可以't我使用复选框启用/禁用我的文本框
- jQuery复选框启用/禁用文本输入和添加/删除默认值
- 复选框启用非活动字段
- 使用复选框启用调用拖动
- 复选框启用或禁用的Jquery代码
- 复选框启用/禁用文件上传.当未选中复选框时,记录中的文件将被删除
- 使用JS通过复选框启用文本框
- 寻找复选框启用-禁用编码技术:减少JavaScript代码的技巧
- 通过选中复选框启用多个输入