2012-09-13 13 views
195

Me gustaría añadir una fecha actual a una etiqueta HTML oculto para que pueda ser enviada al servidor:Como llegar actual fecha dd/mm/aaaa formateado en Javascript y añadirlo a una entrada

<input type="hidden" id="DATE" name="DATE" value="WOULD_LIKE_TO_ADD_DATE_HERE"> 

¿Cómo puedo agregar una fecha formateada al atributo VALOR?

+1

Lo primero: no mezcle Java con Javascript (¡ni siquiera dividas las palabras Java y Script!). Son idiomas completamente diferentes. –

+0

¿Necesita la fecha local del cliente? Podría ser una opción para usar la fecha del servidor? – gparis

Respuesta

387

espero que esto es lo que desea:

var today = new Date(); 
var dd = today.getDate(); 
var mm = today.getMonth()+1; //January is 0! 

var yyyy = today.getFullYear(); 
if(dd<10){ 
    dd='0'+dd; 
} 
if(mm<10){ 
    mm='0'+mm; 
} 
var today = dd+'/'+mm+'/'+yyyy; 
document.getElementById("DATE").value = today; 

How do I get the current date in JavaScript?

+10

Para la mayoría de los usos, reemplace la última línea con "return today;" – sitesbyjoe

+14

Esto es útil, pero confirma que Javascript es terriblemente ineficiente para obtener una fecha formateada. Es insondable tener que escribir más de una línea de código para hacer esto ... – jlbriggs

+60

'new Date (Date.now()). ToLocaleString();' –

-2

Edite el elemento value editando su propiedad .value.

document.getElementById('DATE').value = 'New Value'; 
1

Use getElementByid método del DOM:

document.getElementById("DATE").value = "your date";

A la fecha se puede hacer con la Date clase:

d = new Date();

(Protip: Instalar una consola de Javascript como en Chrome o la extensión Firebug de Firefox. Se le permite jugar con el DOM y Javascript)

0

Al utilizar el atributo de valor:

var today = new Date(); 
document.getElementById('DATE').value += today; 
2

Para obtener la fecha/hora en javascript:

var date = new Date(); 

Si necesita milisegundos para una fácil interpretación del lado del servidor uso

var value = date.getTime(); 

Para formatear las fechas en una cadena legible por el usuario, vea this

Entonces acaba de escribir a campo oculto:

document.getElementById("DATE").value = value; 
66
<input type="hidden" id="date"/> 
<script>document.getElementById("date").value = new Date().toJSON().slice(0,10)</script> 
+7

d.toJSON(). slice (0,10) .split ('-'). reverse(). join ('/') – Gaurav

+0

Forma más rápida de hacerlo sin bibliotecas externas. Muy bien. – jony

+3

Una alternativa a la solución de @ Gaurav para aquellos de nosotros que necesitamos la fecha en formato ISO: 'nueva Fecha(). ToJSON(). Slice (0,10) .replace (/ -/g, '/')' – jony

143

Sinceramente, sugerimos que utilice moment.js. Sólo tiene que descargar moment.min.js y luego usar este fragmento para obtener su fecha en el formato que desee:

<script> 
$(document).ready(function() { 

    // set an element 
    $("#date").val(moment().format('MMM D, YYYY')); 

    // set a variable 
    var today = moment().format('D MMM, YYYY'); 

}); 
</script> 

Uso siguiente tabla para formatos de fecha:

enter image description here

+1

solución simple y efectiva a todos los problemas de visualización de fecha en JavaScript – Jakki

+1

Definitivamente usaré moment.js de ahora encendido. Muy fácil y muy efectivo de usar. @Ali muchas gracias. – FrenkyB

+1

Puede analizar fechas como esta: momento ('26/04/2016 ',' DD/MM/YYYY ') formato (' AAAA-MM-DD '); – WoodyDRN

Cuestiones relacionadas