Как сделать ajax проверку поля перед отправкой формы?

Хочу сделать функцию validateField, которая будет аяксом отсылать значение поля на сервер и получать ответ true или false

Как мне прикрутить эту функцию к событию отправки формы?

Хочется сделать эти функционалы независимыми друг от друга.
  • Вопрос задан
  • 38 просмотров
Решения вопроса 1
@WebEagle
<input name="test1" class="js-validate" data-validate-name="validate1" />
<input name="test2" class="js-validate" data-validate-name="validate2" />

и подключить обработчик onchange
document.querySelectorAll('.js-validate').forEach(function(item) {
  item.addEventListener('onchange', function(event){
    // event.target - измененный элемент
    // event.target.value
    // event.target.getAttribete('data-validate-name') - какую валидацию вы хотите
    // тут вызывать Ajax запрос с требуемыми параметрами, когда придёт ответ
  });
});


Когда приходит отрицательный ответ, добавляйте класс ошибки, или атрибут. К примеру js-input-error. Если вернется true - удаляйте класс
Далее когда будет onSubmit формы, валидируйте чтобы не было элементов с этим классом или атрибутом
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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