Всем привет
Форма с соглашением (checkbox)
html:
<form action="form.php" class="validate">
<h3>Заказать консультацию <span>специалиста</span></h3>
<p>Оставьте контактные данные и в течении 5 минут вам перезвонит опытный специалист!</p>
<div class="wrap_input">
<input type="text" name="name" placeholder="Введите Ваше имя" required>
<i class="fa fa-user" aria-hidden="true"></i>
</div>
<div class="wrap_input">
<input type="email" name="email" placeholder="Введите Ваш email">
<i class="fa fa-phone" aria-hidden="true"></i>
</div>
<div class="wrap_input">
<input type="tel" name="tel" placeholder="Введите Ваш телефон">
<i class="fa fa-phone" aria-hidden="true"></i>
</div>
<div class="form__checkbox">
<label for="form__checkbox">
<span>
<input id="form__checkbox" title="Нужно принять соглашение" name="consent" type="checkbox" checked>
<i></i>
</span>
<a href="#consent_form" class="popup consent">Нажимая кнопку «Получить консультацию», я даю свое согласие на обработку моих персональных данных, в соответствии с Федеральным законом от 27.07.2006 года №152-ФЗ «О персональных данных», на условиях и для целей, определенных в Согласии на обработку персональных данных</a>
</label>
</div>
<button type="submit" class="red_btn">получить консультацию</button>
</form>
Существующая валидация:
$(".validate").each(function() {
var it = $(this);
it.validate({
rules: {
tel: {required: true},
email: {required: true},
consent : {required: true}
},
messages: {},
errorPlacement: function(error, element) {},
submitHandler: function(form) {
var thisForm = $(form);
$.ajax({
type: "POST",
url: thisForm.attr("action"),
data: thisForm.serialize()
}).done(function() {
$.fancybox({
href: '#thanks',
wrapCSS: "popup",
openEffect: "fade",
closeEffect: "fade",
helpers: {
overlay: {
locked: false
}
}
});
thisForm.find("input:not([type=hidden], [type=radio])").val("");
});
return false;
},
success: function() {},
highlight: function(element, errorClass) {
$(element).parent().addClass('error');
},
unhighlight: function(element, errorClass, validClass) {
$(element).parent().removeClass('error');
}
})
});
Планируется:
- Обязательный к заполнению - телефон или емейл, Но можно и оба отправить
- Если чек бокс отмечен - отправляем форму
- Если чек бокс не отмечен - вызываем лист соглашения (fancybox, а в нем текст и 2 кнопки - принять/не принять).
- Лист соглашения - при приеме соглашения форма с веденными ранее данными отправляется. Если не соглашается - делаем выход из соглашения и закрываем всё (fancybox.close)
Помогите пожалуйста с реализацией, нет ни кого рядом кто опытом может поделиться.
P.S. consent : {required: true} - Эта проверка не работает, форма все равно отправляет данные