Lze nějak změnit formát input type="date"?

Na své webové stránce pracuji s prvky HTML5. Ve výchozím nastavení se na vstupu type="date" zobrazuje datum jako YYYY-MM-DD.

Otázka zní, zda je možné změnit jeho formát na něco jako: DD-MM-RRRR?

Řešení

Není možné změnit formát

Musíme rozlišovat mezi formátem po drátě a formátem prezentace prohlížeče.

Formát po drátě

Specifikace HTML5 date input specification odkazuje na specifikaci RFC3339, která specifikuje úplný formát data rovnající se: yyyy-mm-dd. Další podrobnosti viz část 5.6 specifikace RFC3339.

Formát prezentace

Prohlížeče nejsou omezeny v tom, jakým způsobem prezentují vstupní data. V době psaní tohoto článku podporovaly datum prohlížeče Chrome, Edge, Firefox a Opera (viz zde). Všechny zobrazují výběr data a formátování textu ve vstupním poli.

Zařízení pro stolní počítače

V prohlížečích Chrome, Firefox a Opera je formátování textu vstupního pole založeno na nastavení jazyka prohlížeče. V případě prohlížeče Edge je založeno na nastavení jazyka systému Windows. Všechny webové prohlížeče bohužel ignorují formátování data nastavené v operačním systému. Podle mého názoru je to velmi zvláštní chování, které je třeba při používání tohoto typu vstupu zvážit. Například nizozemským uživatelům, kteří mají operační systém nebo jazyk prohlížeče nastaven na en-us, se místo formátu, na který jsou zvyklí, zobrazí 01/30/2019: 30-01-2019.

Internet Explorer 9, 10 a 11 zobrazuje textové vstupní pole s formátem drátů.

Mobilní zařízení

Speciálně pro Chrome v systému Android je formátování založeno na zobrazovacím jazyku systému Android. Předpokládám, že totéž platí i pro ostatní prohlížeče, ačkoli se mi to nepodařilo ověřit.

Komentáře (26)

Domnívám se, že prohlížeč použije místní formát data. Nemyslím si, že je to možné změnit. Můžete samozřejmě použít vlastní nástroj pro výběr data.

Komentáře (3)

Google Chrome ve své poslední beta verzi konečně používá vstup type=date a formát DD-MM-RRRR.

Musí tedy existovat způsob, jak vynutit konkrétní formát. Vyvíjím webovou stránku HTML5 a vyhledávání data nyní selhává při různých formátech.

Komentáře (5)