Javascript 如果至少有一个字段具有填充值,则启用“提交”按钮
抱歉,这可能是重复的Q,但无法轻松找到直接解决方案 我已经通过了这么多答案,发现如果所有值都已填写,则启用提交 $document.readyfunction{ $'.field input'.keyup函数{ var empty=false; $'.field input'.eachfunction{ 如果$this.val.length==0{ 空=真; } }; 如果是空的{ $'.actions输入'.attr'disabled','disabled'; }否则{ $'.actions输入'.attr'disabled',false; } }; }; 用户名 暗语 您可以尝试以下方法: $document.readyfunction{ $'.field input'.keyup函数{ var hasValue=$'username,password'.filterindex,input=>input.value.length>0.length; $'.actions input'.attr'disabled',hasValue?false:'disabled'; }; }; 用户名 暗语 您可以尝试以下方法: $document.readyfunction{ $'.field input'.keyup函数{ var hasValue=$'username,password'.filterindex,input=>input.value.length>0.length; $'.actions input'.attr'disabled',hasValue?false:'disabled'; }; }; 用户名 暗语Javascript 如果至少有一个字段具有填充值,则启用“提交”按钮,javascript,jquery,Javascript,Jquery,抱歉,这可能是重复的Q,但无法轻松找到直接解决方案 我已经通过了这么多答案,发现如果所有值都已填写,则启用提交 $document.readyfunction{ $'.field input'.keyup函数{ var empty=false; $'.field input'.eachfunction{ 如果$this.val.length==0{ 空=真; } }; 如果是空的{ $'.actions输入'.attr'disabled','disabled'; }否则{ $'.actions
您可以用一种简单的方法来尝试,如下所示:
var filled = false;
$('.field input').each(function() {
if ($(this).val().length > 0) {
filled = true;
return; // just add return means break from loop whenever any field is filled.
}
});
if (filled) {
$('.actions input').attr('disabled', false);
} else {
$('.actions input').attr('disabled', 'disabled');
}
});
您可以用一种简单的方法来尝试,如下所示:
var filled = false;
$('.field input').each(function() {
if ($(this).val().length > 0) {
filled = true;
return; // just add return means break from loop whenever any field is filled.
}
});
if (filled) {
$('.actions input').attr('disabled', false);
} else {
$('.actions input').attr('disabled', 'disabled');
}
});
您可以使用Jquery.map和Array.find
Jquery.map.get是根据条件获取所有输入值长度。
Array.find将查找任何一个输入作为字符串的有效长度
最后,结果将反向比较prop'disabled'!填满
$document.readyfunction{
$'.field input'.keyup函数{
var res=$'.field input'.mapfunction{
返回$this.val.length!=0
}.得到
var filled=res.finda=>a==true
$'.actions输入'.prop'disabled',!filled;
};
};
用户名
暗语
您可以使用Jquery.map和Array.find
Jquery.map.get是根据条件获取所有输入值长度。
Array.find将查找任何一个输入作为字符串的有效长度
最后,结果将反向比较prop'disabled'!填满
$document.readyfunction{
$'.field input'.keyup函数{
var res=$'.field input'.mapfunction{
返回$this.val.length!=0
}.得到
var filled=res.finda=>a==true
$'.actions输入'.prop'disabled',!filled;
};
};
用户名
暗语
使用jqueryprops方法 $document.readyfunction{ $':输入[type=submit]'。属性“disabled”,true; $'input'.keyupfunction{ 如果$this.val!={ $':输入[type=submit]'。属性“已禁用”,false; }否则{ $':输入[type=submit]'。属性“disabled”,true; } }; }; 用户名 暗语
使用jqueryprops方法 $document.readyfunction{ $':输入[type=submit]'。属性“disabled”,true; $'input'.keyupfunction{ 如果$this.val!={ $':输入[type=submit]'。属性“已禁用”,false; }否则{ $':输入[type=submit]'。属性“disabled”,true; } }; }; 用户名 暗语
另一种方法是: 存储字段,并在每次按下某个键时创建一个新的字段集合,并按其值过滤每个字段 如果空字段的长度与所有字段的长度相同,请禁用按钮: $document.readyfunction{ 变量$fields=$'。字段输入'; $fields.keyup函数{ var$emptyFields=$fields.filterfunction{ return!this.value; }; $'.actions输入'.prop'disabled',$emptyFields.length===$fields.length; }; }; 用户名 暗语
另一种方法是: 存储字段,并在每次按下某个键时创建一个新的字段集合,并按其值过滤每个字段 如果空字段的长度与所有字段的长度相同,请禁用按钮: $document.readyfunction{ 变量$fields=$'。字段输入'; $fields.keyup函数{ var$emptyFields=$fields.filterfunction{ return!this.value; }; $'.actions输入'.prop'disabled',$emptyFields.length===$fields.length; }; }; 用户名 暗语 如果$this.val.length==0{empty=true;}else{break;}在else部分中添加empty=false和break,则添加else部分;如果$this.val.length==0,则将else部分添加到
{empty=true;}else{break;}在else部分添加empty=false和break;这是魅力,谢谢,伙计,我能在多个领域实现同样的效果吗?例如,我有5个输入,对于2和4、3和5的组合……我需要启用或仍然处于禁用状态。当两个字段都已填充,但其中一个字段已清空时,这是否不存在问题?不工作。在两个字段中输入,然后清除一个输入,它再次进入diable。看看我的答案。@Codenewbie是的。您可以通过编辑选择器$'.actions input'执行相同的操作,只需添加另一行特定的ids@T你能为我的另一个问题提供一个基本的例子吗?一些随机输入和选择字段,以及评论中要求的组合。这是魅力,谢谢,伙计,我能为多个字段实现相同的效果吗?例如,我有5个输入,对于2和4、3和5的组合……我需要启用或仍然处于禁用状态。当两个字段都已填充,但其中一个字段已清空时,这是否不存在问题?不工作。在两个字段中输入,然后清除一个输入,它再次进入diable。看看我的答案。@Codenewbie是的。您可以通过编辑选择器$'.actions input'执行相同的操作,只需添加另一行特定的ids@T你能为我的另一个问题提供一个基本的例子吗?一些随机输入和选择字段,以及评论中要求的组合感谢sol先生,我可以为多个字段实现相同的功能吗?例如,对于2和4、3和5的组合,我有5个输入…我需要启用或仍处于禁用状态感谢sol sir,我可以为多个字段实现相同的功能吗?例如,我有5个输入,用于2和4、3和5的组合……我需要启用或仍然处于禁用状态,先生,我如何将相同的输入用于标记?这可能吗?@Codenewbie。当然可以。您可以在jquery选择器$'中添加select元素。字段输入[必需],.字段选择[必需]“。请检查我的最新更新答案我一直在尝试此操作…..当选择这些组合时,我正在尝试禁用“提交”按钮1 wordtype和word 2 wordlength+word 3 wordlength+wordtype+word请查看fiddle@Codenewbie检查jquery链接是否存在,先生,我如何也将其用于标记?,这可能吗?@Codenewbie。当然可以。您可以在jquery选择器$'中添加select元素。字段输入[必需],.field选择[必需]“。请检查我的最新更新答案我一直在尝试此操作…..当选择这些组合时,我正在尝试禁用“提交”按钮1 wordtype和word 2 wordlength+word 3 wordlength+wordtype+word请查看fiddle@Codenewbie检查jquery链接是否存在