如何检测复选框中是否已选中任何内容? [英] How can I detect if anything in my checkbox is selected?
本文介绍了如何检测复选框中是否已选中任何内容?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如果选中任何一个复选框,我想启用该按钮.否则,如果未选中任何一项,则要禁用该按钮.
If any of the checkboxes are checked, I want to enable the button. Otherwise, if none are checked, I want to disable the button.
jQuery
$(document).ready(function() {
$('.check_list').change(function() {
if ($(".check_list input:checkbox:checked").length > 0){
$(".btn").attr('disabled','disabled');
} else {
$(".btn").removeAttr('disabled');
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" class="check_list" name="check_list[]" value="value1">
<input type="checkbox" class="check_list" name="check_list[]" value="value2">
<input type="checkbox" class="check_list" name="check_list[]" value="value3">
<input type="checkbox" class="check_list" name="check_list[]" value="value4">
<button class="btn" disabled> Button</button>
当我检查按钮时它起作用.但是,当我取消选中所有功能时,它仍处于启用状态.但是应该禁用
It works when I check the button. But when I uncheck everything it is still enabled. But it should be disabled
推荐答案
您的CSS选择器错误.除非您知道自己在做什么,否则请使用prop
而不是attr
.
Your CSS selector is wrong. And use prop
instead of attr
unless you know what you are doing.
var $checklist = $('.check_list').change(function() {
$(".btn").prop('disabled', !$checklist.is(":checked"));
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" class="check_list" name="check_list[]" value="value1">
<input type="checkbox" class="check_list" name="check_list[]" value="value2">
<input type="checkbox" class="check_list" name="check_list[]" value="value3">
<input type="checkbox" class="check_list" name="check_list[]" value="value4">
<button class="btn" disabled> Button</button>
这篇关于如何检测复选框中是否已选中任何内容?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文