проверка лимитов символов текстового поля на стороне клиента с помощью jQuery? - PullRequest
0 голосов
/ 20 августа 2009

У меня есть текстовое поле, которое должно содержать минимальное количество символов, а также максимальное количество символов. Как лучше всего использовать jQuery, чтобы убедиться, что ввод находится в пределах диапазона (при отображении сообщений о состоянии для пользователя), прежде чем разрешить пользователю отправлять форму?

Обновление: приведенный ниже код работает в некоторой степени, однако у меня возникают проблемы при удалении текста. Поскольку он использует «нажатие клавиши» для захвата событий в текстовом поле, переменная «длина» ложно увеличивается, например, при нажатии клавиши «Backspace». Похоже, проблема в том, что длина текста извлекается до факта , т.е. нажатие клавиши всегда будет приводить к длине того, что было до плюс 1. Как это правильно сделать?

Обновление: Мне кажется, я решил предыдущую проблему, используя функцию keyup вместо нажатия клавиши

1 Ответ

1 голос
/ 20 августа 2009

Если это единственная проверка на стороне клиента в вашем приложении (всегда проверяйте также и на сервере!), Тогда это будет выглядеть примерно так:

$("#your_textbox").keypress(function() {
  var length = this.value.length;
  if(length >= MIN && length <= MAX) {
    $("#your_submit").removeAttr("disabled");
    $("#your_validation_div").hide();
  } else {
    $("#your_submit").attr("disabled", "disabled");
    $("#your_validation_div").show();
  }
});

Если вам нужно много проверок в вашем приложении, вы можете рассмотреть плагин проверки .

Установка атрибута maxlength :

<input type='text' maxlength="30" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...