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

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

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

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

Date Control

Control Source

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

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

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

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

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

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

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

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

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

5
07 июля '14 в 9:26
источник

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

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

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

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

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

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