ограничить пользовательский ввод с использованием JavaScript - PullRequest
6 голосов
/ 18 марта 2009

Может кто-нибудь показать мне какой-нибудь пример для ограничения пользовательского ввода (на тег ввода) в Javascript?

Что-то, что, когда мы устанавливаем ввод (type = "text") для приема только чисел, поэтому он игнорирует любой другой ввод, кроме числового ...

Я думаю, что это удобно для ввода чисел (например, почтового индекса, кредитной карты, денег, стоимости, счета, даты и т. Д.), И, если вы можете, пожалуйста, покажите мне, как создать ввод с шаблоном, например:

Please Input Date:
|-----------------|
|     /     /     |
|-----------------|

PS: Я слышал, что WebForms 2.0 будет поддерживать это в будущем ... (Браузер, совместимый с Acid 3?)

тип ввода = "дата"
тип ввода = "время"
тип ввода = "число"
тип ввода = "деньги"

Но это были только новости из будущего: D

Ответы [ 3 ]

8 голосов
/ 18 марта 2009

Это может помочь вам.

http://www.w3schools.com/jsref/event_onkeydown.asp

<html>
<body>

<script type="text/javascript">
function noNumbers(e)
{
var keynum;
var keychar;
var numcheck;

if(window.event) // IE
{
keynum = e.keyCode;
}
else if(e.which) // Netscape/Firefox/Opera
{
keynum = e.which;
}
keychar = String.fromCharCode(keynum);
numcheck = /\d/;
return !numcheck.test(keychar);
}
</script>

<form>
<input type="text" onkeydown="return noNumbers(event)" />
</form>

</body>
</html>
5 голосов
/ 07 апреля 2009

На этот вопрос уже принят ответ, но я думаю, что есть лучшее решение для этого. Вам не нужно реализовывать это самостоятельно с помощью keydown и т. Д., Для этого есть библиотеки. Они называют технику, которую вы описываете, «масками ввода». Проверьте этот плагин jQuery , он делает именно то, что вы хотите.

3 голосов
/ 18 марта 2009

Вы можете использовать определенные библиотеки, такие как jQuery Validate (или все, что предлагает ваша платформа JS) при отправке формы. Другое решение состоит в том, чтобы контролировать значение в событиях keyUp и blur, но может оказаться довольно грязным, чтобы решить, что делать с плохо сформированным вводом (особенно, когда формат немного сложен - то есть не только нежелательные символы). Итак, в общем, я бы порекомендовал контроль на стороне клиента при отправке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...