如果提交的表单在初始加载时没有任何选择,我需要我的错误处理程序来触发。如果我在文档就绪功能的每个复选框上添加.prop('required',true),它将包含其他复选框,这些复选框具有从数据库加载的值。这意味着即使已经选择了字段,我的错误处理程序也会触发。
所以我在'onsubmit'函数之外尝试了这段代码:
Guide
它在初次提交尝试时可以按预期工作,如果该表单未选择任何复选框,它将触发我的错误处理程序,但是,如果我测试了其他已经选择了该复选框的表单,则也会触发我的错误处理程序。
这是我当前的以下代码:
Header
上面代码的结果比我预期的要多1鼠标点击(从字面上看)。这将在第一次单击提交按钮时将复选框设置为必填,然后在第二次尝试中显示我的错误处理程序。
是否有一种方法可以使我的错误处理程序在初始加载时触发,而无需在准备好文档时将复选框设置为“必需”?
答案 0 :(得分:0)
尝试下面的代码
$(document).ready(function(){
$('form :checkbox', this).each(function(){
var checkbox = $(this);
if( ! checkbox.is(':checked')){
checkbox.prop('required', true);
}
})
})
答案 1 :(得分:-1)
尝试$(this).find(':checkbox:not(:checked)').prop('required',true);