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
Это из за имени name=«contact_acceptance[]».
Проблема в том, что contact_acceptance != contact_acceptance[]
Тут два решения. Добавить в js обработку события af_complete, которая будет подставлять на все input с фигурными скобками класс error:
Проблема в том, что contact_acceptance != contact_acceptance[]
Тут два решения. Добавить в js обработку события af_complete, которая будет подставлять на все input с фигурными скобками класс error:
$(document).on('af_complete', function(event, response) {
if(response.success === false){
var form = response.form;
for (key in response.data) {
$('input[name="'+key+'[]"]').addClass('error');
}
}
});
Либо использовать в верстке конструкцию такого типа, без фигурных скобок:<input type="hidden" name="contact_acceptance" value="" />
<input type="checkbox" id="contactFormAcceptance" class="" name="contact_acceptance" value="1">
Если при отправке формы поставят чекбокс, то на FormIt получит значение 1 и валидация required будет выполнена, если не поставят, то придет пустое значение и форма не отправится.
Спасибо огромное, товарищ!
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.