Мне нужны мои обработчики ошибок, если форма отправляется без выбора при начальной загрузке. Если я добавлю .prop ('required', true) на каждый флажок в функции готовности документа, он будет включать другие флажки, значения которых загружены из нашей базы данных. Это означает, что мой обработчик ошибок будет запущен, хотя уже выбраны поля.
Итак, я попробовал этот код вне моей функции onsubmit:
$(this).find('input[type=checkbox]').filter(':checked').length;
$('.cboxgrp').each(function(){
if(cboxgrp===0){
$(this).find('input[type=checkbox]').prop('require',true);}
Он работает, как и ожидалось, при первоначальной попытке отправки, он запускает мои обработчики ошибок, если в форме не выбраны какие-либо флажки, однако, если я проверил другие формы, в которых уже установлены флажки, мои обработчики ошибок также были бы запущены.
Это мой текущий код ниже:
$(#form).on('submit', function(){
$(this).find('input[type=checkbox]').filter(':checked').length;
$('.cboxgrp').each(function(){
if(cboxgrp===0){
$(this).find('input[type=checkbox]').prop('require',true);}});
Результат в приведенном выше коде на 1 щелчок мыши (буквально) больше, чем я ожидал. Это установит флажки для обязательных при первом нажатии кнопки отправки, а затем со второй попытки показывает мои обработчики ошибок.
Есть ли способ, с помощью которого мои обработчики ошибок могут запускаться при начальной загрузке, не устанавливая флажки «обязательные» в готовом документе?