Javascript 如何使用名称选择器选择所选复选框的长度

Javascript 如何使用名称选择器选择所选复选框的长度,javascript,jquery,html,validation,Javascript,Jquery,Html,Validation,我有一个复选框列表,根据至少一个选择,需要启用或禁用按钮 该复选框具有名称,因为它们需要将值回发到服务器 以下是我尝试的代码: $('input')。更改(函数(){ console.log('cheeck box change'); if($(“输入[name='name1']:选中”).length){ $('#sub').removeAttr('disabled'); }否则{ $('#sub').attr('disabled','disabled'); } }); 价值观 价值观 价

我有一个复选框列表,根据至少一个选择,需要启用或禁用按钮

该复选框具有名称,因为它们需要将值回发到服务器

以下是我尝试的代码:

$('input')。更改(函数(){
console.log('cheeck box change');
if($(“输入[name='name1']:选中”).length){
$('#sub').removeAttr('disabled');
}否则{
$('#sub').attr('disabled','disabled');
}
});

价值观

价值观

价值观

价值观

价值观


看起来您在选择器中犯了一个小错误
输入[name='name1']:选中“
,它应该类似于
“输入[type='checkbox']:选中”

当前“您正在选择具有
name='name1'
的输入元素,这些元素与任何复选框都不匹配,因为它们都没有值为
“name1”
的名称属性

>,考虑下面的变化:

$('input')。更改(函数(){
console.log('cheeck box change');
如果($($(输入[type='checkbox']:checked”).length){/请尝试此解决方案

$('input[type="checkbox"]').click(function(){
        if($(this).prop("checked") == true){
            document.getElementById("sub").disabled = true;
        }
        else if($(this).prop("checked") == false){
            document.getElementById("sub").disabled = false;
        }
    });

并检查此链接:

此脚本可能会帮助您以简单的方式编写它。 只需选中复选框

$(“输入[type='checkbox']”)和onclick
$(“输入[type='submit']”)attr(“禁用”、!checkbox.is(“:选中”);

完整的源代码在这里

var复选框=$(“输入[type='checkbox']),
submitButt=$(“输入[type='submit']”);
复选框。单击(函数(){
submitButt.attr(“禁用”!复选框.is(“:选中”);
});

如果至少选中一个复选框,则应启用按钮
选择1
选择2
选择3
选择4
备选案文5

@ChintuYadavSara,这件很漂亮。你能把它添加到答案中吗?那不是我的作品,是@chris coyier,所以我不能添加它作为我的答案。:)我刚刚在internet@ChintuYadavSara,谢谢你的诚实。你仍然可以在你的答案中归功于消息来源。但是这将真正帮助任何一个来到这篇文章的人