Приветствую) Почему при использовании плагина
(maskedinput.js) не очищается состояние ошибки
oninput="setCustomValidity('')" и не отсылается ajax отправка формы?
Если заполнить сразу форму правильно, то всё ок отправляется.
Если заполнить имя, но не заполнить телефон, то как и полагается появляется сообщение ('Оставьте телефон для связи')... Но когда заполняешь телефон, то ошибка не пропадает и форма не отправляется, хотя значение
console.log($('.phone').val()); в консоли показывает что поле не пустое! Если отключить плагин
(maskedinput.js) , то тоже всё ок отправляет....В чём может быть проблема? Помогите пожалуйста(((
HTML:
<form class="form">
<div class="container">
<div class="row">
<div class="col-lg-6 col-md-6">
<input type="text" name="name" placeholder="Имя" required oninvalid="this.setCustomValidity('Представьтесь пожалуйста')" oninput="setCustomValidity('')">
<input class="phone" type="text" name="phone" placeholder="Телефон" required oninvalid="this.setCustomValidity('Оставьте телефон для связи')" oninput="setCustomValidity('')">
<input type="email" name="email" placeholder="E-mail">
</div>
<div class="col-lg-12 btn__container">
<button class="feedback-form__btn btn">Отправить</button>
<p class="q">* Отправляя форму, вы даете свое согласие на
<a href="#">обработку персональных данных</a>
</p>
</div>
</div><!-- row -->
</div><!-- container -->
</form>
JS:
$(".phone").mask("+9(999)999-99-99");
$('.form').submit(function(e){
e.preventDefault();
var $form = $(this);
$.ajax({
type: $form.attr('method'),
url: $form.attr('action'),
data: $form.serialize()
}).done(function() {
$('.thanks-modal').show();
});
});
$('.thanks-modal__btn').click(function(){
$('.thanks-modal').hide();
$('input').val('');
});
$('.feedback-form__btn').click(function(){
console.log($('.phone').val());
});