javascript - 基于复选框启用和禁用的按钮是否被选中
问题描述
当未选中任何复选框时,我遇到了一个问题,然后按钮将不会被禁用,它仍然处于启用状态。
我还将属性放在禁用的按钮上,但它仍然处于启用状态;
这是我的代码
<input class="form-check-input tab1_chk" type="checkbox" name="2[]" value="1">Option 1
<input class="form-check-input tab1_chk" type="checkbox" name="2[]" value="2">Option 2
<input class="form-check-input tab1_chk" type="checkbox" name="2[]" value="2">Option 3
<br>
<br>
<button type='button' class='tab1_btn' name="next" id="next">
Next
</button>
if ($(".tab1_chk:checked" )) {
$('.tab1_btn').prop('disabled', false);
} else {
$('.tab1_btn').prop('disabled', true);
}
当我在此之前发出警报时$('.tab1_btn').prop('disabled', false);
然后警报在运行时显示,但在此之前发出警报 2$('.tab1_btn').prop('disabled', true);
然后警报不显示,只显示第一个警报
我需要当没有选中任何复选框时,下一个按钮将被禁用
解决方案
您需要应用事件处理程序
$('.tab1_btn').prop('disabled', !$('.tab1_chk:checked').length);//initially disable/enable button based on checked length
$('input[type=checkbox]').click(function() {
if ($('.tab1_chk:checkbox:checked').length > 0) {
$('.tab1_btn').prop('disabled', false);
} else {
$('.tab1_btn').prop('disabled', true);
}
});
推荐阅读
- machine-learning - 关于一种新型置信区间的问题
- javascript - Ajax 发送数据并获得响应,但不准确
- awesome-wm - 如何在 awesome-wm 中剪切由`:layout` 方法绘制的区域?
- excel - 将 Teradata SQL 查询(带有列别名)动态传递给 ODBC 查询时出现 Expression.Error
- python - IMAP4 库语法
- javascript - 从特定页面删除侧抽屉
- heroku - 错误 403:您无权访问此服务器上的 /
- objective-c - 我应该在视图控制器中编写 NSTimer 代码还是使用委托/通知模式编写单独的类?
- erlang - 调试 hackney 请求
- java - 解析器适用于某些 ArrayList,抛出 Expected BEGIN_OBJECT 但对其他人来说是 STRING