Työskentelen HTML5-elementtien kanssa verkkosivullani. Oletusarvoisesti input type="date"
näyttää päivämäärän muodossa YYYY-MM-DD
.
Kysymys kuuluu, onko mahdollista muuttaa sen muoto joksikin seuraavanlaiseksi: DD-MM-YYYY
?
Muotoa on mahdotonta muuttaa
Meidän on erotettava toisistaan langan yli tapahtuva muoto ja selaimen esitysmuoto.
HTML5-päivämäärämääritys viittaa RFC3339-määritykseen, joka määrittelee täydellisen päivämäärämuodon, joka vastaa: yyyyyy-mm-dd
. Katso lisätietoja RFC3339-määrittelyn kohdasta 5.6].
Selaimilla ei ole rajoituksia sen suhteen, miten ne esittävät päivämäärän syötteen. Tätä kirjoitettaessa Chrome, Edge, Firefox ja Opera tukevat päivämäärää (katso täällä). Ne kaikki näyttävät päivämäärän valitsimen ja muotoilevat tekstin syöttökentässä.
Työpöytälaitteet
Chromessa, Firefoxissa ja Operassa syöttökentän tekstin muotoilu perustuu selaimen kieliasetukseen. Edgessä se perustuu Windowsin kieliasetukseen. Valitettavasti kaikki selaimet eivät ota huomioon käyttöjärjestelmässä määritettyä päivämäärän muotoilua. Minusta tämä on hyvin outoa käytöstä, ja se on syytä ottaa huomioon, kun käytät tätä syöttötyyppiä. Esimerkiksi hollantilaisille käyttäjille, joiden käyttöjärjestelmän tai selaimen kieleksi on asetettu en-us
, näytetään esimerkiksi 01/30/2019
heidän tottumansa muotoilun sijasta: 30-01-2019
.
Internet Explorer 9, 10 ja 11 näyttävät tekstinsyöttökentän langan muodossa.
Mobiililaitteet
Erityisesti Androidin Chrome-käyttöjärjestelmässä muotoilu perustuu Androidin näyttökieleen. Epäilen, että sama pätee myös muihin selaimiin, vaikka en olekaan pystynyt tarkistamaan tätä.
Google Chrome käyttää viimeisimmässä beta-versiossaan vihdoin syöttötietoa type=date
, ja muoto on DD-MM-YYYY
.
Täytyy siis olla jokin tapa pakottaa tietty muoto. Kehitän HTML5-verkkosivua, ja päivämäärähaut epäonnistuvat nyt eri formaateilla.