Добавляем...


Обработчики onchange
Нет причин ждать предъявления формы серверу, чтобы выполнить проверку данных поля. Можно проверить содержимое поля сразу же после того, как пользователь изменит его значение, если воспользоваться обработчиком событий onchange. Например:

<script type="text/javascript">
<!--
function validateZip(zip)
{
if (/\d{5}(-\d{4})?/.test(zip))
return true;
alert("ZIP-код должен иметь вид NNNNN или NNNNN-NNNN");
return false;
}
// -->
</script>
...
<form action="#" method="get">
input type="text" name="zipcode" id="zipcode" onchage="return validateZip(this.value);" />
...другие поля...
</form>

Функция validateZipO вызывается, когда поле для ввода ZIP-кода утрачивает фокус после изменения его пользователем. Если ZIP-код оказывается недействительным, обработчик возвращает false, в результате чего вызов действия по умолчанию (утрата полем фокуса) отменяется. Пользователь должен ввести действительный ZIP-код, чтобы фокус переместился к другому полю на странице.
Запрет перехода фокуса к другому полю до тех пор, пока не будет правильно заполнено текущее поле, является весьма сомнительным решением с точки зрения удобства использования формы. Часто пользователи сначала вводят информацию частино позже возвращаясь к завершению ввода в поле. Они могут также начать ввод данных в поле по ошибке, поняв затем, что не желают указывать соответствующие данные. В таких ситуациях "захват" фокуса ввода одним полем формы может вызвать раздражение пользователя. По этим причинам разработчики стараются избегать такого подхода. Вместо этого лучше сообщить пользователю об ошибке, но в программе обработки onchange возвратить true, чтобы не блокировать свободный доступ пользован к другим полям формы.
назад:
далее:


добавить комментарий
(без перезагрузки и регистрации)


10 случайных разделов

Что ищем на сайте ?


Примеры кода на сайте







@ 2008-2011 Amber
При использовании материалов ссылка на сайт обязательна
Яндекс.Метрика