Er der nogen måde at ændre input type="date" formatet på?
Jeg arbejder med HTML5-elementer på min webside. Som standard viser input type="date"
datoen som YYYYYY-MM-DD
.
Spørgsmålet er, om det er muligt at ændre formatet til noget i stil med: DD-MM-YYYYYY
?
702
3
Det er umuligt at ændre formatet
Der skal skelnes mellem over the wire-formatet og browserens præsentationsformat.
Wire-format
Specifikationen HTML5 date input specification henviser til RFC3339-specifikationen, som specificerer et fuldt dato-format svarende til:
ååååå-mm-dd
. Se afsnit 5.6 i RFC3339-specifikationen for flere oplysninger.Præsentationsformat
Browsere kan frit vælge, hvordan de præsenterer en datoindtastning. I skrivende stund har Chrome, Edge, Firefox og Opera understøttelse af dato (se her). De viser alle en datovælger og formaterer teksten i indtastningsfeltet.
Desktop-enheder
For Chrome, Firefox og Opera er formateringen af inputfeltets tekst baseret på browserens sprogindstilling. For Edge er den baseret på sprogindstillingen i Windows. Desværre ignorerer alle webbrowsere den datoformatering, der er konfigureret i operativsystemet. For mig er dette en meget mærkelig opførsel, og noget man bør overveje, når man bruger denne inputtype. F.eks. vil hollandske brugere, hvis operativsystem eller browsersprog er indstillet til
en-us
, få vist01/30/2019
i stedet for det format, de er vant til:30-01-2019
.Internet Explorer 9, 10 og 11 viser et tekstindtastningsfelt med trådformatet.
Mobile enheder
Specielt for Chrome på Android er formateringen baseret på Android-skærmesproget. Jeg formoder, at det samme gælder for andre browsere, selv om jeg ikke har kunnet verificere dette.
Jeg tror, at browseren vil bruge det lokale datoformat. Jeg tror ikke, at det er muligt at ændre det. Du kan selvfølgelig bruge en brugerdefineret datovælger.
Google Chrome bruger i sin seneste betaversion endelig input
type=date
, og formatet erDD-MM-YYYYY
.Så der må være en måde at fremtvinge et bestemt format på. Jeg'er ved at udvikle en HTML5-webside, og dato-søgningerne fejler nu med forskellige formater.