как сделать чтобы в input можно было вводить только цифры

Как сделать входной тег HTML только принимать числовые значения?

Мне нужно убедиться, что определенный поле принимает только цифры в качестве значения. Входные данные не являются частью формы. Следовательно, он не отправляется, поэтому проверка во время отправки не является опцией. Я хочу, чтобы пользователь не мог вводить какие-либо символы, кроме чисел.

есть ли аккуратный способ достичь этого?

21 ответов

можно использовать номер входного типа HTML5 ограничить только количество записей:

это будет работать только в браузере жалоб HTML5. Убедитесь, что тип документа html:

см. также https://github.com/jonstipe/number-polyfill для прозрачной поддержки в старых браузерах.

для общего назначения вы можете иметь проверку JS, как показано ниже:

если вы хотите разрешить десятичные дроби заменить» если условие » следующим:

вы также можете использовать атрибут pattern в html5:

хотя, если ваш doctype не html тогда, я думаю, вам нужно будет использовать javascript/jquery.

пожалуйста, попробуйте этот код вместе с самим полем ввода

он будет работать нормально.

обратите внимание, что вход type=»number» тег поддерживается только в новых браузерах.

для firefox вы можете проверить ввод с помощью javascript:

обновление 2018-03-12: поддержка браузера намного лучше, теперь это поддерживается следующим:

onkeyup триггеры, когда ключ отпущен.

isNaN(parseFloat(value))? проверяет, не является ли входное значение числом.

если это не число, значение равно 1000 : если это число, значение устанавливается в значение.

Примечание: по какой-то причине он работает только с type=»number»

чтобы сделать его еще более увлекательным, вы также можете иметь границы:

Я боролся с этим немного. Многие решения здесь и в других местах казались сложными. Это решение использует jQuery / javascript наряду с HTML.

в моем случае я отслеживал небольшие количества с минимальным значением 1, следовательно, min= » 1 » во входном теге и abc = 1 в проверке isNaN (). Для положительных только чисел вы можете изменить эти значения на 0 и даже просто удалить min=»1″ из тега ввода, чтобы разрешить отрицательные числа.

Читайте также:  Как называется дырка в пододеяльнике

также это работает для нескольких ящиков (и может сэкономить вам время загрузки по отдельности по id), просто добавьте класс «validateNumber», где это необходимо.

или вы можете написать его в сложную бу удобным способом:

Примечание: кросс-браузер и регулярное выражение в литерале.

Если вы можете использовать HTML5, вы можете сделать Если нет, вам придется либо сделать это через javascript, как вы сказали, он не будет отправлен, чтобы сделать это из codebehind.

P. S не тестировал код, но он должен быть более или менее правильным, если не проверять опечатки: D Вы можете добавить еще несколько вещей, например, что делать, если строка равна null или пуста и т. д. Также вы можете сделать это быстрее: D

Источник

Позволить вводить в input только числа?

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Как сделать фильтр, только числа чтоб в input type text вводить?
есть input type = text, как сделать чтобы в него можно было вводить только цифры?

Как позволить вводить только определенные символы в textarea
Нужно разрешить только ввод латинских букв, чтобы все остальное игнорировалось(цифры, знаки.

В input вводить только английские буквы
Доброго времени суток. В общем нужно в input type=text разрешить ввод только английских букв (т.е.

В input вводить только английские буквы?
Доброго времени суток. В общем нужно в input type=text разрешить ввод только английских букв (т.е.

Но не пашет, по отзывам, в FF, да и 0 пропускает.

Регулярка будет выглядеть так:

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

Читайте также:  какие органы можно пересадить

кроме того, попутно появляется задача установки курсора в текстовом поле на его место, если вдруг юзер в середину числа попытается «воткнуть» букву

а если же просто (только с клавы, да и хрен с ним, с курсором), то

Кстати, если верить htmlbook-у, то на текущий момент поддержка у FF есть далеко не для всех нововведенных типов, зато имеющиеся, пусть среди них и нет таких «крутых» как «color«, но те что есть реально нужные и те, с которыми иногда приходится возиться, составляя оптимальный регэксп: «email«, «tel«, «url«.

Добавлено через 5 минут

мух от котлет отделите

так вот. обрабатывать replace () может чем угодно и как угодно отловленное

Для начала введите несколько символов и попробуйте угнанть каретку в середину текста клавишами со стрелками [←] и [→]. Если получится, я чем я сомневаюсь (особенно в IE), то теперь в середине текста попробуйте вписать несколько цифр. После этого Вам, возможно, потребуется успокоительное.

Источник

Портал про кино и шоу-биз