Více na
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
?
702
3
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.
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.
Google Chrome ve své poslední beta verzi konečně používá vstup
type=date
a formátDD-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.