Перейти к содержимому

Как ограничить количество символов в input html

  • автор:

Как ограничить количество символов в input number в пределах от 0 до 999.999?

По сути, max и min это валидаторы. Но они никак не ограничивают ввод с клавиатуры и простой копи-паст.

Воспользуйтесь простым обработчиком события и через JS установите минимальное/максимальное значение при выходе за лимиты.

const inputs = document.querySelectorAll('input[type=number]'); Array.from(inputs).forEach(input => < const min = +input.min; const max = +input.max; input.addEventListener('input', (e) => < const value = +input.value; if (value >max) < input.value = max >else if (value < min) < input.value = min >> >)); 

Отслеживать
ответ дан 12 мая 2020 в 15:09
1,833 1 1 золотой знак 7 7 серебряных знаков 9 9 бронзовых знаков

Мне еще нужно ограничить число до тысячных. К примеру нужно что бы пользователь мог ввести 5.999, 66.111, 110,1. Не подскажите как сделать это?

12 мая 2020 в 15:15
можно использовать Math.round на значение. Math.round(value * 1000) / 1000
12 мая 2020 в 15:18

Спасибо. Еще бы один моментик подсказали и ситуация будет спасена. Есть ли возможность разделить дробную и целую часть точкой, а не запятой?

12 мая 2020 в 15:52

Когда вы вводите вручную, input понимает и . и , в качестве разделителя. Если пользуетесь button-controls для изменения, значение будет выдавать , . Если это прям кровь из носу точку надо, то лучше использовать type=»text» парсить по разделителю , типа input.value = » + value.split(‘,’).join(‘.’) . В этом случае, валидаторы min/max — это просто болванки, которые работать не будут. Ну и button-controls вы не увидите

Атрибут maxlength

Устанавливает максимальное число символов, которое может быть введено пользователем в текстовом поле. Когда это количество достигается при наборе, дальнейший ввод становится невозможным.

Синтаксис

Значения

Любое целое положительное число.

Значение по умолчанию

Ввод символов не ограничен.

HTML5 IE Cr Op Sa Fx

    Тег INPUT, атрибут maxlength  

Не выкладывайте свой код напрямую в комментариях, он отображается некорректно. Воспользуйтесь сервисом cssdeck.com или jsfiddle.net, сохраните код и в комментариях дайте на него ссылку. Так и результат сразу увидят.

Типы тегов

HTML5

Блочные элементы

Строчные элементы

Универсальные элементы

Нестандартные теги

Осуждаемые теги

Видео

Документ

Звук

Изображения

Объекты

Скрипты

Списки

Ссылки

Таблицы

Текст

Форматирование

Формы

Фреймы

Атрибут maxlength HTML тега input

Атрибут maxlength определяет максимальное количество символов допустимое для ввода в текстовое поле.

Синтаксис атрибута
Значения атрибута
Значение Описание
число Максимальное количество символов допустимое для ввода в текстовое поля. Значение по умолчанию 524288.
Пример использования атрибута

Текстовое поле с максимальной длиной ввода 10 символов:

Атрибут maxlength

Устанавливает максимальное число символов, которое может быть введено пользователем в текстовом поле. Когда это количество достигается при наборе, дальнейший ввод становится невозможным.

Атрибут maxlength может добавляться только к полю формы, у которого type имеет одно из значений: text , password , search , url , tel , email .

Синтаксис

Значения

Любое целое положительное число.

Значение по умолчанию

Ввод символов не ограничен.

Пример

INPUT, атрибут maxlength

Браузеры

3 12 1 4 1 1

В таблице браузеров применяются следующие обозначения.

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

Число указывает версию браузреа, начиная с которой элемент поддерживается.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *