如果在页面初始加载时未选中任何复选框,则返回无效的提交

时间:2019-07-04 09:46:16

标签: jquery validation checkbox jquery-plugins onload

如果提交的表单在初始加载时没有任何选择,我需要我的错误处理程序来触发。如果我在文档就绪功能的每个复选框上添加.prop('required',true),它将包含其他复选框,这些复选框具有从数据库加载的值。这意味着即使已经选择了字段,我的错误处理程序也会触发。

所以我在'onsubmit'函数之外尝试了这段代码:

Guide

它在初次提交尝试时可以按预期工作,如果该表单未选择任何复选框,它将触发我的错误处理程序,但是,如果我测试了其他已经选择了该复选框的表单,则也会触发我的错误处理程序。

这是我当前的以下代码:

Header

上面代码的结果比我预期的要多1鼠标点击(从字面上看)。这将在第一次单击提交按钮时将复选框设置为必填,然后在第二次尝试中显示我的错误处理程序。

是否有一种方法可以使我的错误处理程序在初始加载时触发,而无需在准备好文档时将复选框设置为“必需”?

2 个答案:

答案 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);