Простая валидация ввода данных на клиенте c jQuery
Маленький плагинчик к jQuery, позволяющий оградить пользователей от ввода букв в цифровые поля, цифр в буквенные и всякой излишней гадости в цифро-буквенные =)
Разумеется, как и любая проверка на клиенте, этот скрипт имеет лишь превентивное действие. Если вы опасаетесь попыток взлома (а вы их опасаетесь, я уверен), обязательно проверяйте данные и на сервере.
Скрипт доработан напильником и понимает по-русски. Использовать его очень просто:
1. Добавьте в ваш код jQuery (если еще не добавили =)) и модифицированный alphanumeric:
<script language="JavaScript" src="js/jquery.js" type="text/javascript"></script> <script language="JavaScript" src="js/jq.alphanum.js" type="text/javascript"></script>
2. Обозначьте поля ввода, которые требуется отслеживать классами. Например, alpha_only, alphanum и num_only:
<input type="text" id="btime_1" size="2" class="num_only str">3. Включите плагин для обозначенных полей (в моем случае, в обозначенное поле можно ввести только цифры):
<script language="javascript"> $(document).ready(function(){ $('.num_only').numeric(); }); </script>
Скачайте обрусевший скрипт тут. За дополнительной документацией и примерами — проходите на сайт разработчика плагина.
Похожих записей нет.
5 Комментариев
April 4th, 2009
спасибо! статья очень помогла!
April 27th, 2009
Интересная особенность, пропускает русские буквы, когда полю назначается $(’.num_only’).numeric();
Получается, что латиницу он останавливает, а кириллицу нет. Кто-нибудь сталкивался с этим?
April 27th, 2009
Добавлю, при рендере скриптов кириллица преобразуется в следующее:
if (p.nocaps) p.nchars += “ABCDEFGHIJKLMNOPQRSTUVWXYZ?ą?Ƈȉʋ̍ΏБғԕؙ֗ܚޟ”;
if (p.allcaps) p.nchars += “abcdefghijklmnopqrstuvwxyzࡢ㤥?槨骫쭮ﰱ??”;
подскажите, пожалуйста, как исправить?
April 27th, 2009
Дмитрий, а в какой кодировке исходник?
April 27th, 2009
Все, сработало, действительно сохранил как UTF-8 и все заработало. Спасибо!
Добавить комментарий