AjaxForm checkbox без класса error
Приветствую.
Есть такой checkbox:
Валидация настроение и без отметки на чекбоксе форма не отправляется.
При попытке пройти валидацию на пустой форме, как обычно срабатывает jGrowl error и «required» полям добавляется класс error, но не этому чекбоксу.
В чем может быть ошибка?
Есть такой checkbox:
<input type="hidden" name="contact_acceptance[]" value="">
<input type="checkbox" id="contactFormAcceptance" class="" name="contact_acceptance[]" value="accepted" [[!+fi.contact_acceptance:FormItIsChecked=`accepted`]]>
<label for="contactFormAcceptance">Вызов сниппета:[[!AjaxForm?
&snippet=`FormIt`
&form=`Tpl.ContactForm1`
&hooks=`email`
&emailTpl=`Tpl.ContactEmail`
&emailTo=`123321@gmail.com`
&emailSubject=`Заявка на обратную связь`
&validationErrorMessage=`Заполните нужные поля`
&successMessage=`Заявка отправлена, в ближайшее время мы свяжемся с вами.`
&validate=`contact_name:required,contact_phone:required,contact_acceptance:required`
]]Валидация настроение и без отметки на чекбоксе форма не отправляется.
При попытке пройти валидацию на пустой форме, как обычно срабатывает jGrowl error и «required» полям добавляется класс error, но не этому чекбоксу.
В чем может быть ошибка?
Комментарии: 2
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Проблема в том, что contact_acceptance != contact_acceptance[]
Тут два решения. Добавить в js обработку события af_complete, которая будет подставлять на все input с фигурными скобками класс error:
Либо использовать в верстке конструкцию такого типа, без фигурных скобок:
Если при отправке формы поставят чекбокс, то на FormIt получит значение 1 и валидация required будет выполнена, если не поставят, то придет пустое значение и форма не отправится.