Валидация ajaxForm
Есть простой код, взят из документации
Версия ajaxForm 1.1.7
Версия ajaxForm 1.1.7
$(document).on('submit', '.removeTest', function() {
// Здесь любой код для проверки формы при отправке
// Я просто печатаю её в консоли бразуреа
console.log(this);
// Результатом работы будет выставление глобальной переменной
afValidated = false; // Или true, если валидация пройдена
});
Но отправка формы все равно происходит, к консоли форму выводит… в чем может быть причина? Комментарии: 5
$(document).on('submit', '.removeTest', function(event) {
//отменяем стандартное поведение браузера
event.preventDefault();
// Здесь любой код для проверки формы при отправке
// Я просто печатаю её в консоли бразуреа
console.log(this);
// Результатом работы будет выставление глобальной переменной
afValidated = false; // Или true, если валидация пройдена
});
//отменяем стандартное поведение браузера
event.preventDefault();
Не помогло, при размещении в ресурсе только отрабатывает (без event), при размещении в подключеном js не работает (что с event, что без него). Ладно, оставлю в ресурсе, где формы....., это не принципиально… Спасибо!
event.preventDefault();
Не помогло, при размещении в ресурсе только отрабатывает (без event), при размещении в подключеном js не работает (что с event, что без него). Ладно, оставлю в ресурсе, где формы....., это не принципиально… Спасибо!
Предположу, что скрипт с кодом валидации подключается после скрипта ajaxForm.
Увы, но тоже нет… мой js файл выше. А скрипты ajaxForm подключаются и прописываются вроде динамически в конце страницы, если мы говорим про вот этот скрипт /assets/components/ajaxform/js/default.js
event.preventDefault() отменяет стандартное действие, т.е. в твоем обработчике отменится сабмит формы. Но если на событие навешано несколько обработчиков, то они все сработают. Т.е. в другом обработчике события submit форма засобмитится. Чтобы отменить остальные обработчики, нужно добавить event.stopImmediatePropagation().
Но в данном случае, я бы подебажил, чтобы разобраться, почему не работает стандартный функционал ajaxForm — в файле default.js проверил бы глобальную переменную afValidated.
Но в данном случае, я бы подебажил, чтобы разобраться, почему не работает стандартный функционал ajaxForm — в файле default.js проверил бы глобальную переменную afValidated.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.