Es imposible cambiar el formato.
Tenemos que diferenciar entre el formato over the wire y el formato de presentación del navegador.
Formato de alambre
La especificación de entrada de fecha HTML5 se refiere a la especificación RFC 3339 , que especifica un formato de fecha completa igual a: yyyy-mm-dd
. Consulte la sección 5.6 de la especificación RFC 3339 para obtener más detalles.
Este formato es usado por el value
atributo HTML y la propiedad DOM y es el que se usa cuando se envía un formulario ordinario.
Formato de presentación
Los navegadores no tienen restricciones en cómo presentan una entrada de fecha. Al momento de escribir, Chrome, Edge, Firefox y Opera tienen soporte para fechas (ver aquí ). Todos muestran un selector de fecha y formatean el texto en el campo de entrada.
Dispositivos de escritorio
Para Chrome, Firefox y Opera, el formato del texto del campo de entrada se basa en la configuración de idioma del navegador. Para Edge, se basa en la configuración de idioma de Windows. Lamentablemente, todos los navegadores web ignoran el formato de fecha configurado en el sistema operativo. Para mí, este es un comportamiento muy extraño y algo a tener en cuenta al usar este tipo de entrada. Por ejemplo, los usuarios holandeses que tienen su sistema operativo o el conjunto de idioma del navegador a en-us
serán mostrados 01/30/2019
en lugar del formato que están acostumbrados a: 30-01-2019
.
Internet Explorer 9, 10 y 11 muestran un campo de entrada de texto con el formato de conexión.
Dispositivos móviles
Específicamente para Chrome en Android, el formato se basa en el idioma de visualización de Android. Sospecho que lo mismo es cierto para otros navegadores, aunque no he podido verificar esto.