Динамическая проверка формы на JavaScript


Если Вы не хотите мучить своих пользователей лишними перезагрузками страницы и не хотите лишний раз нагружать сервер, то перед отправкой форм на сервер, их надо обязательно проверить через JavaScript. И в этот раз мы обсудим динамическую проверку формы на JavaScript. Начнём мы с HTML-формы: <form name="myform" action="#" method="post"> <p>Логин: <input type="text" name="login" onkeyup="check(this.value)" /> <span id="e_login" style="display: none; color: #c00;">Логин введён неправильно</span></p> </form> Ключевой момент - это обработчик события onkeyup. Событие keyup отвечает за отпускание клавиши. Обратите внимание, что очень часто ставят onkeypress или onkeydown - это неправильно, так как будет происходить отставание на 1 шаг. Рекомендую попробовать поставить, например, onkeypress и проанализировать результат. JavaScript-код тоже очень простой: <script type="text/javascript"> function check(login) { if (login.length < 3) document.getElementById("e_login").style.display = "inline"; else document.getElementById("e_login").style.display = "none"; } </script> В функции check() мы проверяем длину логина, и если она меньше 3-х символов, то мы выводим ошибку (делая соответсвующий элемент видимым), иначе прячем это сообщение. Аналогично, можно проверять абсолютно любые формы. Также не забывайте, что перед отправкой надо целиком проверить ещё раз всю форму. Делается это через onsubmit у тега form. И всегда помните, что проверка формы на JavaScript не отменяет проверку формы в PHP.