Jquery 函数,用于指示窗体字段是否为空
我想根据可见的表单元素返回true或false,但不仅仅是输入,还有收音机和复选框。 到目前为止,我有这个代码,但有些地方不正确。一旦我填写了所有的输入,它就会变成真的Jquery 函数,用于指示窗体字段是否为空,jquery,input,filter,is-empty,Jquery,Input,Filter,Is Empty,我想根据可见的表单元素返回true或false,但不仅仅是输入,还有收音机和复选框。 到目前为止,我有这个代码,但有些地方不正确。一旦我填写了所有的输入,它就会变成真的 函数isAllFilled(){ 返回$('.en_u必填。表单控件:可见')。筛选器(函数(){ if($(this.attr('type')='checkbox'| |$(this.attr('type')=='radio')){ 返回$(this).is(':checked')。长度==0 }否则{ 返回$(this).
函数isAllFilled(){
返回$('.en_u必填。表单控件:可见')。筛选器(函数(){
if($(this.attr('type')='checkbox'| |$(this.attr('type')=='radio')){
返回$(this).is(':checked')。长度==0
}否则{
返回$(this).val().length==0
}
}).length==0
}
$('.form-control')。在('input',function()上{
log(isAllFilled());
})
是的,我在
不
我建议您使用:如果所有测试都为真,并且在第一次返回时停止,则循环返回true
函数isAllFilled(){
返回$('.en_u必填。窗体控件:可见').toArray().every(函数(e){
if($(e).attr('type')=='checkbox'){
返回$(e).is(':checked');
}else if($(e).attr('type')='radio')){
//测试是否至少选中了一个收音机(按组名)
让name=$(e.attr('name'))
返回$(`[type=radio][name='${name}']`);
}else if($(e).attr('type')='text'){
返回$(e).val().length>0
}
})
}
$('.form-control')。在('input',function()上{
log(isAllFilled());
});代码>
是的,我在
不
您只显示一个true或false,因此要显示每个控件的值吗?我只想显示一个true或false。如果所有字段都已填充,则为True。这对于收音机是不可能的,如果相同的属性名称始终为False,则只能检查一个。为什么不?使用$('input[type=“radio”]')。is(':checked'),如果不检查任何内容,它显然会返回false。