Uso de moment.js para convertir la fecha en la cadena "MM / dd / aaaa"

89

Necesito tomar el valor de fecha de jquery datepicker y convertirlo en formato de cadena "MM / dd / aaaa" para que pueda hacer la publicación correcta de Ajax. Cuando se carga la página o al cambiar el selector de fecha, se realiza una llamada ajax de jquery.

Tengo este codigo:

var sTimestamp =
moment($("#start_ts").datepicker("getDate")).format("MM/dd/yyyy");

Pero no lo convierte en "MM / dd / aaaa". Cuando uso Fiddler para verificar lo que se envía por el cable, este es el cuerpo:

startTimestamp=03%2FTh%2Fyyyy&endTimestamp=03%2FTh%2Fyyyy&pageSize=50&pageNum=0

Si utilizo componer en Fiddler y cambio el cuerpo a:

startTimestamp=03/13/2013&endTimestamp=03/14/2013&pageSize=50&pageNum=0

Recibo la respuesta correcta. Entonces, mi pregunta es, ¿hay alguna manera de tomar un objeto de fecha y formatearlo en una cadena "MM / dd / aaaa" usando moment.js? ¿O hay algún problema con la forma en que obtengo la fecha del selector de fechas?

Por cierto, supongo que datepicker.getDate devuelve un objeto de fecha, ya que eso es lo que me dicen los documentos de jQuery.

Gracias,

okysabeni
fuente

Respuestas:

71

Creo que solo tiene mayúsculas y minúsculas incorrectas en la cadena de formato. Según la documentación, esto debería funcionar para usted:MM/DD/YYYY

documentación de moment.js

Robbie
fuente
115
StartDate = moment(StartDate).format('MM-YYYY');

... y formato de fecha MySQL:

StartDate = moment(StartDate).format('YYYY-MM-DD');
NXT
fuente
2
El formato de fecha MySQL (AAAA-MM-DD) también se puede ordenar alfanuméricamente, se puede usar en nombres de archivo para ordenar archivos, es claro y legible por humanos (no confuso como dd / mm y mm / dd), ISO 8601 y prácticamente el solo formato sano. "01/02/2016" es simplemente ... "¿Qué? ¿De dónde eres? ¿Qué formato de fecha usan allí?" ;)
Tedd Hansen
8

Prueba esto:

var momentObj = $("#start_ts").datepicker("getDate");

var yourDate = momentObj.format('L');
Jack
fuente
7

Utilizar:

formato.fecha ("DD / MM / AAAA") o formato.fecha ("DD-MM-AAAA")}

Otros formatos compatibles para referencia:

Meses:

M 1 2 ... 11 12

Mo 1 ° 2 ° ... 11 ° 12 °

MM 01 02 ... 11 12

MMM Ene Feb ... Nov Dic

MMMM enero febrero ... noviembre diciembre

Día:

d 0 1 ... 5 6

hacer 0th 1st ... 5th 6th

dd Su Mo ... Fr Sa

ddd Dom Lun ... Vie Sáb

dddd Domingo Lunes ... Viernes Sábado

Año:

YY 70 71 ... 29 30

YYYY 1970 1971 ... 2029 2030

Y 1970 1971 ... 9999 +10000 +10001

Hitesh Sahu
fuente
5
.format('MM/DD/YYYY HH:mm:ss')
Purva
fuente