使用 Jquery 检查基于 Div Id 和 Class 的所有复选框
Check All Checkboxes based on Div Id and Class using Jquery
我想检查所有基于 Div ID 和复选框 Class 的复选框。不同 div 中的所有复选框都具有相同的 class。我想在那个特定的 div 中选中按钮单击时的所有复选框。我不想像下面这样使用 input[type='checkbox'] 。我只想使用 Class 名称。我可以这样做吗?
$('div#'+Id+' input[type=checkbox]').each(function () {
$(this).prop('checked', true);
});
下面是我的代码。
<div id="div1">
<input type="button" id="btnDiv1" value="Select All" />
<input type="checkbox" class="check" />Mark
<input type="checkbox" class="check" />Frank
</div>
<div id="div2">
<input type="button" id="btnDiv2" value="Select All" />
<input type="checkbox" class="check" />John
<input type="checkbox" class="check" />Travis
<input type="checkbox" class="check" /> Matt
</div>
<div id="div3">
<input type="button" id="btnDiv3" value="Select All" />
<input type="checkbox" class="check" />Lee
<input type="checkbox" class="check" />Charles
</div>
使用 class 选择器直接调用 'prop()' 方法,如下所示:
$('div#'+Id+' input.check').prop('checked', true);
编辑:
$('input[type=button]').click(function() {
$(this).parent().find('.check').prop('checked', true);
});
如果您希望在单击 'Select All' 按钮时 select 一组中的所有复选框元素,您可以为 'Select All' 元素指定一个通用的 class 名称,并且然后附加一个 click
事件侦听器。
您可以使用 .nextAll()
到 select 所有后续的 .check
元素:
$('.select-all').on('click', function () {
$(this).nextAll('.check').prop('checked', true);
});
..或者您可以 select 最近的 div
祖先,然后 select 其中的所有 .check
元素:
$('.select-all').on('click', function () {
$(this).closest('div').find('.check').prop('checked', true);
});
如果你想 select 基于被点击的 'Select All' 按钮的 id
中的数字的元素,你可以使用以下方法:
$('.select-all').on('click', function () {
$('#div' + this.id.replace(/\D/g, '') +' .check').prop('checked', true);
});
你可以这样做:
$('div').on('click',function(){
$(this).find('input:not([type=button])').prop('checked',true);
});
我想检查所有基于 Div ID 和复选框 Class 的复选框。不同 div 中的所有复选框都具有相同的 class。我想在那个特定的 div 中选中按钮单击时的所有复选框。我不想像下面这样使用 input[type='checkbox'] 。我只想使用 Class 名称。我可以这样做吗?
$('div#'+Id+' input[type=checkbox]').each(function () {
$(this).prop('checked', true);
});
下面是我的代码。
<div id="div1">
<input type="button" id="btnDiv1" value="Select All" />
<input type="checkbox" class="check" />Mark
<input type="checkbox" class="check" />Frank
</div>
<div id="div2">
<input type="button" id="btnDiv2" value="Select All" />
<input type="checkbox" class="check" />John
<input type="checkbox" class="check" />Travis
<input type="checkbox" class="check" /> Matt
</div>
<div id="div3">
<input type="button" id="btnDiv3" value="Select All" />
<input type="checkbox" class="check" />Lee
<input type="checkbox" class="check" />Charles
</div>
使用 class 选择器直接调用 'prop()' 方法,如下所示:
$('div#'+Id+' input.check').prop('checked', true);
编辑:
$('input[type=button]').click(function() {
$(this).parent().find('.check').prop('checked', true);
});
如果您希望在单击 'Select All' 按钮时 select 一组中的所有复选框元素,您可以为 'Select All' 元素指定一个通用的 class 名称,并且然后附加一个 click
事件侦听器。
您可以使用 .nextAll()
到 select 所有后续的 .check
元素:
$('.select-all').on('click', function () {
$(this).nextAll('.check').prop('checked', true);
});
..或者您可以 select 最近的 div
祖先,然后 select 其中的所有 .check
元素:
$('.select-all').on('click', function () {
$(this).closest('div').find('.check').prop('checked', true);
});
如果你想 select 基于被点击的 'Select All' 按钮的 id
中的数字的元素,你可以使用以下方法:
$('.select-all').on('click', function () {
$('#div' + this.id.replace(/\D/g, '') +' .check').prop('checked', true);
});
你可以这样做:
$('div').on('click',function(){
$(this).find('input:not([type=button])').prop('checked',true);
});