Задать вопрос
@frontend-front

Как в плагине validate убирать сообщение об ошибке если пользователь нажал галочку в checkbox?

У меня есть несколько форм и на каждую я навешиваю скрипт валидации:
Но если я в одну из форм ввожу правильное значение - то сообщение об ошибке не убирается.
Когда в событии invalidHandler и onkeyup убираю $(this).find(".js-form-message") а оставляю просто $(".js-form-message"), то сообщение об ошибке появляются в каждой форме.
Как это исправить?
$('.js-form-validate').each(function (index) {
	$(this).validate({
		rules: {
			name: {
				required: true,
				minlength: 2
			},
			email: {
				required: true,
				minlength: 6
			},
			checkbox: {
				required: true
			}
		},
		messages: {
			name: {
				required: "Text of Error",
				minlength: 2
			},
			email: {
				required: "Email of Error"
			},
			checkbox: {
				required: "Checkbox of Error"
			}
		},
		errorClass: "has-error",
		errorPlacement: function (error, element) {
			return true;
		},
		focusCleanup: true,
		focusInvalid: false,
		invalidHandler: function (event, validator) {
			$(this).find(".js-form-message").html('<div class="alert alert-danger">Заполните все поля формы.</div>');
		},
		onkeyup: function (element) {
			$(this).find(".js-form-message").text("");
		}
	});
});
  • Вопрос задан
  • 58 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
Fortoo
@Fortoo
Top-Web OpenCart
Сообытия формы, на которые подписывается плагин — это «click», «focusin», «focusout», «keyup», «submit».
Т.е он следит именно за формой- поэтому все поля должны быть внутри формы.
и
https://jqueryvalidation.org/category/selectors/
https://api.jquery.com/checked-selector/
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы