minlength: минимальная длина текстового ввода
Атрибут minlength задаёт минимальную длину пользовательского ввода для поддерживаемых текстовых полей.
Назначение
Атрибут minlength задаёт минимальную длину пользовательского ввода для поддерживаемых текстовых полей.
Как это работает
Длина определяется в кодовых единицах UTF-16, поэтому видимый символ и единица длины не всегда совпадают. Пустое необязательное поле не становится обязательным из-за minlength: для этого нужен required.
Пример
<label for="nickname">Имя, минимум 3 единицы длины</label>
<input id="nickname" name="nickname" minlength="3" required>
Что должно получиться
Для обычных букв значение короче трёх не проходит проверку длины при пользовательском вводе. Обязательность пустого поля обеспечивает отдельный required.
Граница применения и частая ошибка
Не переносите число из интерфейса на сервер без согласования правила подсчёта. Эмодзи и составные символы могут дать разные результаты при подсчёте байтов, кодовых точек и видимых знаков.
Самостоятельная проверка
Проверьте пустое значение, два обычных символа и три обычных символа. Затем повторите опыт с эмодзи в отдельной странице и объясните отличие от простого подсчёта букв.
HTML и CSS можно изменить в песочнице ниже. Она изолирована: JavaScript, внешние ресурсы и отправка форм отключены. Для проверки сетевых запросов, отправки данных или функций браузера используйте отдельную локальную страницу.