Есть несколько однотипных форм с праверкой на пустоту, нужно еще сделать проверку на email через pattern, куда его всунуть ?
<form class="js-form-template">
<div class="form-field">
<div class="form-field-box">
<input class="form-field-style js-valid" type="text" name="name[]" placeholder="Ваше имя">
<input class="form-field-style js-valid" type="text" name="phone[]" placeholder="Телефон">
<input class="form-field-style js-valid" type="email" name="mail[]" placeholder="E-mail">
<input class="form-field-style" type="text" name="city[]" placeholder="Город">
<input class="hidden" type="text" name="identify[]" value="Запрос условий сотрудничества">
</div>
<div class="form-check partner-check">
<input id="partner-check" class="form-check-box partner-check-box hide js-check" type="checkbox" name="check[]" checked>
<label class="form-check-label partner-check-label" for="partner-check">Я соглашаюсь с <a class="confidencial" target="_blank" href="conf.html">политикой конфиденциальности</a></label>
</div>
<input class="open-btn open-btn-white partner-btn" type="submit" name="send" value="Получить условия">
</div>
</form>
$(document).ready(function() {
function isFormValid($form) {
var is_correct = true;
$form.find('.js-valid').each(function(){
if( $(this).val() =='' ) {
$(this).addClass('errorInput');
$(this).parent().addClass('error');
is_correct = false;
}
});
return is_correct;
};
function checkValid($form) {
var iscorCheck = false;
$form.find('.js-check').each(function(){
if( $(this).is(':checked')) {
iscorCheck = true;
};
});
return iscorCheck;
};
$(".js-form-template").submit(function(e) {
e.preventDefault();
$('form .js-valid').on('keyup', function(e) {
var valid = true;
var $proc_form = $(this).parents('form');
if(isFormValid($proc_form)) {
$(this).parent().removeClass('error');
}
if( $(this).val() !='' ) {
$(this).removeClass('errorInput');
};
});
//Валидация форм
var $proc_form = $(this);
if(isFormValid($proc_form) && checkValid($proc_form)) {
showLoad();
$.ajax({
type: "GET",
url: "mail.php",
data: $(this).serialize()
}).done(function() {
$.fancybox.close({ src: '.js-pop' });
hideLoad();
$(this).find("input").val("");
$.fancybox.open({ src: '#oky' });
$(".js-form-template").trigger("reset");
});
}
return false;
});
});