Ошибка задержки jQuery с плагином проверки формы - PullRequest
3 голосов
/ 26 сентября 2011

У меня есть всплывающее окно с использованием скрипта ZURB.org (работает отлично). В этом окне у меня есть Форма, которую пользователь может заполнить определенной информацией. Это отлично проверяется с помощью плагина - выдает хорошо выглядящие сообщения об ошибках, выровненные в порядке.

Моя проблема в том, что в этом окне показывалось, когда пользователь щелкает из окна показа (чтобы выйти), значки проверки остаются там до тех пор, пока пользователь не нажмет на них вручную.

Мне удалось выяснить, нажимают ли они значок «Выход» в верхней части окна, он закроет их с помощью следующего кода:

<a class="close-reveal-modal" onclick="$('#jobForm').validationEngine('hideAll');">Exit</a>

Как бы то ни было, теперь я хочу использовать немного jQuery для автоматического «скрытия» этих сообщений об ошибках, скажем, через 3 секунды.

Код, который у меня пока есть:

<script>
$(document).ready(function() {
$("#job_submit").click(function() {
$('#jobForm').validationEngine('hideAll').delay(3000);
 });
 });
</script>

job_submit - это идентификатор и имя кнопки «Отправить» в форме. Я пошел на шаг дальше с помощью средства отладки Chromes и написал в консоли следующий код:

$ ( '# jobForm') validationEngine ( 'hideAll') задержка (3000);..

При наличии ошибок при проверке формы. Это вернулось с ошибкой «Ошибка типа».

С этого момента я не уверен, как решить эту ошибку типа.

Как всегда, большое спасибо за вашу помощь.

Update

Классы Div не называются одинаково, по какой-то причине первая часть div - это имя самого поля формы, например, jdesformError parentFormjobForm formError

Как бы то ни было, последние 2 раздела выглядят согласованными.

Я попробовал это в консоли - $ ('. jdesformError parentFormjobForm formError'). delay (1000) .trigger ('click');

и оно прошло с летающими цветами, однако, поле 'error' не исчезло, когда оно появляется, когда я физически щелкаю по нему, будет ли это как-то связано с раскрывающимся окном, которое я использую?

1 Ответ

0 голосов
/ 26 сентября 2011

Вот подход:

$(document).ready(function() {
    $("#job_submit").click(function() {
        // click all the errors at once
        $('.formError').delay(3000).trigger('click');
     });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...