Configuración de formato y valor en tipo de entrada = “fecha”

¿Hay alguna manera de establecer el formato de ? Si no, ¿cómo puedo establecer la fecha en este campo usando JavaScript en el formato predeterminado de type="date" . ¿Cómo puedo obtener lo que será el formato de este campo?

EDITAR: En realidad, quiero mostrar el selector de fecha nativo del dispositivo móvil, por eso escogí este tipo de entrada. si hay alguna alternativa para ese campo que también sea buena para tener.

Lo siento si dije algo estúpido. Por favor guíame

El formato es YYYY-MM-DD . No puedes cambiarlo

$('#myinput').val('2013-12-31'); establece valor

prueba esto 🙂

 function getDefaultDate(){ var now = new Date(); var day = ("0" + now.getDate()).slice(-2); var month = ("0" + (now.getMonth() + 1)).slice(-2); var today = now.getFullYear()+"-"+(month)+"-"+(day) ; return today; } $(document).ready(function(){ $("#dateid").val( getDefaultDate()); }); 

new Date().toISOString().split('T')[0];

Probaría jquery y jquery ui para agregar un buen control de calendario que haga todo el valor que se selecciona y formatea para usted. el formato simple de un campo de entrada no es suficiente para usuarios exigentes de la web de hoy 🙂

Eche un vistazo a este enlace

Es feo, pero funciona. : /

 var today = new Date().toLocaleString('en-GB').split(' ')[0].split('/').reverse().join('-'); 

Consulte este https://stackoverflow.com/a/9519493/1074944 y pruebe también $('input[type="date"]').datepicker().prop('type','text'); revisa la demostración

Creo que esto puede ayudar

 function myFormatDateFunction(date, format) { ... } jQuery('input[type="date"]') .each(function(){ Object.defineProperty(this,'value',{ get: function() { return myFormatDateFunction(this.valueAsDate, 'dd.mm.yyyy'); }, configurable: true, enumerable : true }); }); 
 function getDefaultDate(curDate){ var dt = new Date(curDate);`enter code here` var date = dt.getDate(); var month = dt.getMonth(); var year = dt.getFullYear(); if (month.toString().length == 1) { month = "0" + month } if (date.toString().length == 1) { date = "0" + date } return year.toString() + "-" + month.toString() + "-" + date.toString(); } 

En la función, pase su cadena de fecha.

@cOnstructOr proporcionó una gran idea, pero dejó una coma en su lugar

 var today = new Date().toLocaleString('en-GB').split(' ')[0].slice(0,-1).split('/').reverse().join('-'); 

arregla eso

Más fácil que lo anterior es

 var today = new Date().toISOString().substring(0,10); # "2013-12-31" 

La configuración regional canadiense también sigue el mismo formato:

 new Date().toLocaleDateString('en-CA')