У меня есть сайт, на котором есть слайдер на основе jQuery Неудобная витрина .
На этих слайдах у меня есть форма Rails для регистрации нового пользователя.Я использую гем проверки на стороне клиента для проверки на стороне клиента.
Проблема в том, что поскольку форма находится на втором .showcase-slide, она не существует вDOM, когда страница загружается, и проверка на стороне клиента не работает.
Мне нужен способ использовать ловушку, найденную на странице GitHub проверки на стороне клиента, для активации проверок на стороне клиента, когда мой элемент загружен.
Итак, как мне использовать хук $('form#user_new[data-validate]').validate();
в моей форме с идентификатором user_new
, который не загружается сразу и исчезает из DOM при изменении слайда витрины.
Я попробовал несколько вариантов .live
и .bind
, но, очевидно, мой jQuery очень слабый, и мне не повезло.
Помогите, пожалуйста?
Обновление
Я пробовал это:
$("body").delegate("#user_username", 'focus', function(){
$('form#user_new[data-validate]').validate()});
Но теперь каждый раз, когда я нажимаю на поле #user_username, в стек добавляется другая проверка, и я получаю несколькоошибки (клоны), отображаемые для одного поля.
Еще одно обновление и некрасивое решение
Хорошо, это то, что я придумал, но оно, безусловно, ужасно.Любое лучшее решение приветствуется!
$("body").delegate("#user_username", 'focus', function(){
if ($('form#user_new[data-validate]').data('events') === undefined ) {
$('form#user_new[data-validate]').validate()
}});