Javascript 是否选中基于复选框的按钮启用和禁用
我一直面临一个问题,当“无”复选框被选中时,按钮将不会被禁用,它仍然处于启用状态 我也把属性放在禁用按钮上,但它仍然被启用 这是我的密码Javascript 是否选中基于复选框的按钮启用和禁用,javascript,jquery,html,Javascript,Jquery,Html,我一直面临一个问题,当“无”复选框被选中时,按钮将不会被禁用,它仍然处于启用状态 我也把属性放在禁用按钮上,但它仍然被启用 这是我的密码 选项1 选择2 选择3 下一个 if($(“.tab1\u chk:checked”)){ $('.tab1_btn').prop('disabled',false); }否则{ $('.tab1_btn').prop('disabled',true); } 当我在此$('.tab1_btn').prop('disabled',false)之前发出警报
选项1
选择2
选择3
下一个
if($(“.tab1\u chk:checked”)){
$('.tab1_btn').prop('disabled',false);
}否则{
$('.tab1_btn').prop('disabled',true);
}
当我在此$('.tab1_btn').prop('disabled',false)之前发出警报时代码>
然后,运行时会显示警报,但在此$('.tab1_btn').prop('disabled',true)之前也会发出警报2代码>然后警报未显示只有第一个警报显示
如果未选中任何复选框,则需要禁用“下一步”按钮您需要应用事件处理程序
$('.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);
}
});
工作代码段:-要使此工作正常,您需要在任何状态更改时检查是否有任何复选框
为此,您可以将change
事件处理程序附加到它们,然后使用:checked
选择器确定是否选择了任何选项,然后根据需要启用/禁用按钮。试试这个:
$('.form check input').change(函数(){
$('#next').prop('disabled',!$('.form check输入:checked').length);
});代码>
选择1
选择2
选择3
下一步
试试下面的代码它对我有用:
$(document).ready(function(){
checkboxDisable()
$(".tab1_chk").click(function(){
checkboxDisable();
});
function checkboxDisable(){
if($(".tab1_chk:checked").length > 0)
{
$('.tab1_btn').prop('disabled', false);
}else{
$('.tab1_btn').prop('disabled', true);
}
}
});
事件处理程序是一个很好的解决方案。。。我爱死它了!!如果您想在页面加载时执行此操作,您可以对现有代码稍作更改,如:
if ($(".tab1_chk").is(':checked')) {
$('.tab1_btn').prop('disabled', false);
} else {
$('.tab1_btn').prop('disabled', true);
}
它工作了,我用你的代码试过了 你需要告诉OP,最初的按钮需要被禁用(你在HTML代码中使用的),考虑到页面的初始状态,这部分看起来就像是常识:)非常感谢你现在它按照我的需要工作。。Thanx一次again@Arslan很高兴为您提供帮助:):)如果($('.tab1\u chk:checkbox:checked').length>0)当单选按钮出现时如何更改此行?而不是checkbox
doradio
where