| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: Применение библиотек > Jquery.validation() errorplacement |
| Автор: CyClon 13.12.2009, 01:17 | ||
| Ночь. Мозги плавятся. Использую Jquery и плагин validation для проверки данных в форме. Ошибки (неправильно введённые данные) я кидаю в div id="error_labe". это я отметил так:
Т.е. в див вставляется ошибка с помощью html. Но происходит такая ситуация: если пользователь ввёл неправильные данные - ошибка выводится в этот див, но если исправить данные на правильные, то ошибка не уходит. причина понятна: html добавил ошибку, а убирать никто не собирается. но проблему то решить нужно Что можно придумать? Заранее благодарен за помощь з.ы. это аккаунт друга. на почту не приходит письмо регистрации. даже повторное письмо пробывал - толку ноль. почта своя, уже написал в суппорт конечно, но можно как-то по-другому решить проблему? |
| Автор: WolfAlone 13.12.2009, 02:13 |
| Извините, не совсем понял Вашу проблему! Проблема в том, что Вы не можете заменить содержимое div'a в котором содержится текст ошибки или в том, что не правильно работает функция валидации и при верно введённых данных она не корректно срабатывает? |
| Автор: CyClon 13.12.2009, 02:26 |
| Необходимо заменять поле на пустое, если ошибок нет |
| Автор: IDVsbruck 13.12.2009, 14:55 |
| Тебе надо подсказать как проверять на наличие ошибок? Или как сделать див пустым? - непонятен вопрос ... Если первое, то мало вводных, если второе, то $("#error_label").html(""); спасет "отца русской демократии". |
| Автор: CyClon 13.12.2009, 15:49 |
| Попытка № 3. Есть форма. Есть код (выше написан), котоырй выводит ошибки. Ситуация: человек ввёл данные некорректно. ввёл некорректный email. в диве высветилась ошибка! он исправил мыло на правильное, но ошибка не исчезла, т.е. при onblur ошибка не исчезает! |
| Автор: CyClon 13.12.2009, 21:57 | ||
| Как и на всех остальных форумах: пока дождёшься ответа, легче самому найти решение, что я и сделал =)) По теме: Нужно просто добавить такую строчку:
|
| Автор: IDVsbruck 14.12.2009, 03:39 |
| Твоя "строчка" возвращает содержимое. А для обнуления нужно .html(""); |
| Автор: CyClon 14.12.2009, 19:27 | ||||
Ну, в коде, естественно, я так и написал. Просто здесь торопился и написал неправильно. Чтобы не создавать новую тему, спрошу здесь. Ситуация: для вывода ошибок в валидаторе я не использую какие-то либо дополнительные контейнеры, т.е. не юзая errorContainer; errorPlacement и т.п. Т.е. мне нравится, как выводятся ошибки справка от input'а. Естественно, я ошибкам задал свой стиль ксс:
Всё хорошо, ошибки высвечиваются справа от инпутов, как я и хотел, в моём стиле. Но иногда переносятся. Вот в каких ситуациях: 1. Пользователь вводит неверные данные. (на скриншоте: блабла). справа ему об этом сообщает слово "ошибка!". 2. Пользователь исправляет на верное значение (на скриншоте: Логин) 3. Пользователь решает снова написать неправильные значения(на скриншоте: блаблабла) и по идее ему должна высветиться ошибка, но уже высвечивается она ниже инпута, а не справа от него. Как-то в ксс надо что-либо подправить. Что и как? заранее спасибо з.ы. скриншот нарисован в фотошопе, он не из браузера |