HTML5 Дата ввода 6-значный год

У меня есть стандартный элемент управления <input /> на моей форме, украшенный type="date"

При визуализации отображается правильный водяной знак yyyy-mm-dd, и вы можете правильно выбрать дату.
Однако при попытке ввода значения значение год продолжается до 6 цифр вместо четырех. Я добавил скриншоты, чтобы продемонстрировать, что у меня есть проблема.

Кто-нибудь еще это понимает? Я использую Chrome (версия 35.0.1916.153 м) в качестве браузера по умолчанию.
Мне нужен способ принудительного ввода 4year, который не требует дополнительного JS.

Date Control

Control Source

+12
07 июл. '14 в 6:03
источник поделиться
3 ответа

Максимальный атрибут работает, насколько я знаю...

формат max - трикки, если вы поместите правильный формат, все будет нормально работать.

см. здесь, например:

http://www.w3schools.com/html/tryit.asp?filename=tryhtml5_input_max_min_date

+7
11 нояб. '14 в 17:23
источник

Это позволит вам напечатать больший год. Он не был спроектирован с колпачком, чтобы позволить годам после 9999. Не знаю, почему. (обратите внимание, что даже с атрибутом max он, по-видимому, не ограничивает его. [edit].. он не может позволить пользователю фактически отправить после ввода большего номера.)

Вам нужно будет использовать решение JavaScript, если вы хотите полностью его ограничить.

Смотрите этот предыдущий поток

+5
07 июл. '14 в 6:26
источник

Немного устарел, но для потомков...

Использование атрибута max устраняет эту проблему.

<input type="date" max="2999-12-31">

Ручка: https://codepen.io/iHearRobots/pen/OQVzLZ

0
31 янв. '18 в 16:34
источник

Посмотрите другие вопросы по меткам или Задайте вопрос