选中除禁用项之外的所有复选框元素(Select all checkbox elements except disabled ones)
我想选择所有checkbox元素期望禁用的,
这是我的HTML
<input id="chkSelectAll" class="checkbox" type="checkbox" />Select All <div id="ContentPlaceHolder1_listItem_pnlDis_0"> <input id="checkApproved" type="checkbox" name="checkApproved" checked="checked" disabled="disabled"> </div> <div id="ContentPlaceHolder1_listItem_pnlDis_8" class="dis"> <input id="checkApproved" type="checkbox" name="ctl00$ContentPlaceHolder1$listItem$ctrl8$checkApproved"> </div>jQuery的
$('#chkSelectAll').click(function () { var checked_status = this.checked; // alert(checked_status); $('div#item input[type=checkbox]').each(function () { this.checked = checked_status; }); })它正在选择所有checkbox元素,但我想跳过禁用元素。
我怎样才能做到这一点?
I want to select all checkbox elements expect disabled ones,
this is my html
<input id="chkSelectAll" class="checkbox" type="checkbox" />Select All <div id="ContentPlaceHolder1_listItem_pnlDis_0"> <input id="checkApproved" type="checkbox" name="checkApproved" checked="checked" disabled="disabled"> </div> <div id="ContentPlaceHolder1_listItem_pnlDis_8" class="dis"> <input id="checkApproved" type="checkbox" name="ctl00$ContentPlaceHolder1$listItem$ctrl8$checkApproved"> </div>jQuery
$('#chkSelectAll').click(function () { var checked_status = this.checked; // alert(checked_status); $('div#item input[type=checkbox]').each(function () { this.checked = checked_status; }); })it's working for selecting all checkbox elements but I want to skip disabled ones.
How can I do that?
最满意答案
使用not()来排除具有禁用属性的东西。
$('#chkSelectAll').click(function () { var checked_status = this.checked; $('div#item input[type=checkbox]').not("[disabled]").each(function () { this.checked = checked_status; }); });更简洁
$('#chkSelectAll').click(function () { var checked_status = this.checked; $('div#item input[type=checkbox]').not(":disabled").prop("checked", checked_status); });Use not() to exclude things with a disabled attribute.
$('#chkSelectAll').click(function () { var checked_status = this.checked; $('div#item input[type=checkbox]').not("[disabled]").each(function () { this.checked = checked_status; }); });more concise
$('#chkSelectAll').click(function () { var checked_status = this.checked; $('div#item input[type=checkbox]').not(":disabled").prop("checked", checked_status); });更多推荐
发布评论