作者热门文章
- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我有一个表格,每行都有一个复选框,下面有一个按钮。如果至少选中一个复选框,我想禁用该按钮。
<tbody>
<tr>
<td>
<input class="myCheckBox" type="checkbox"></input>
</td>
</tr>
</tbody>
<button type=submit id="confirmButton"> BUTTON </button>
我想出的 jQuery 实现如下:
$('tbody').click(function () {
$('tbody tr').each(function () {
if ($(this).find('.myCheckBox').prop('checked')) {
doEnableButton = true;
}
if (!doEnableButton) {
$('#confirmButton').prop('disabled', 'disabled')
}
else {
$('#confirmButton').removeAttr("disabled");
}
});
});
当然,这是行不通的。否则我不会在这里。它所做的只是响应最低的复选框(例如,当最低的按钮被选中/未选中时,按钮被启用/禁用)。
我做了一个 JSFIddle here尽管它没有表现出与本地相同的行为。
有谁知道我如何才能响应所有复选框并在所有复选框都被禁用时禁用按钮?
最佳答案
试试这个:
var checkBoxes = $('tbody .myCheckBox');
checkBoxes.change(function () {
$('#confirmButton').prop('disabled', checkBoxes.filter(':checked').length < 1);
});
checkBoxes.change(); // or add disabled="true" in the HTML
解释,我改变了什么:
关于javascript - 如果所有复选框都未选中,则禁用按钮,如果至少选中一个,则启用它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20687884/
我是一名优秀的程序员,十分优秀!