È impossibile cambiare il formato
Dobbiamo distinguere tra il formato over the wire e il formato di presentazione del browser.
Formato filo
La specifica di input data HTML5 riferisce alla specifica RFC 3339 , che specifica un formato di pieno data pari a: yyyy-mm-dd
. Vedere la sezione 5.6 della specifica RFC 3339 per maggiori dettagli.
Questo formato viene utilizzato dall'attributo value
HTML e dalla proprietà DOM ed è quello utilizzato per l'invio di un normale modulo.
Formato di presentazione
I browser non hanno limiti nel modo in cui presentano un input di data. Al momento della scrittura di Chrome, Edge, Firefox e Opera hanno il supporto della data (vedi qui ). Tutti visualizzano un selettore di date e formattano il testo nel campo di input.
Dispositivi desktop
Per Chrome, Firefox e Opera, la formattazione del testo del campo di input si basa sull'impostazione della lingua del browser. Per Edge, si basa sull'impostazione della lingua di Windows. Purtroppo, tutti i browser Web ignorano la formattazione della data configurata nel sistema operativo. Per me questo è un comportamento molto strano e qualcosa da considerare quando si utilizza questo tipo di input. Ad esempio, gli utenti olandesi che hanno il loro sistema operativo o set lingua del browser al en-us
verranno mostrati 01/30/2019
al posto del formato in cui sono abituati a: 30-01-2019
.
Internet Explorer 9, 10 e 11 visualizzano un campo di immissione testo con il formato filo.
Dispositivi mobili
In particolare per Chrome su Android, la formattazione si basa sulla lingua di visualizzazione di Android. Ho il sospetto che lo stesso vale per altri browser, anche se non sono stato in grado di verificarlo.