119 votes

Utilisation de moment.js pour convertir une date en chaîne de caractères "MM/dd/yyyy".

J'ai besoin de prendre la valeur de la date de jquery datepicker et de la transformer en format de chaîne "MM/dd/yyyy" pour qu'elle puisse faire le bon post ajax. Lorsque la page se charge ou lorsque le sélecteur de date est modifié, un appel ajax jquery est effectué.

J'ai ce code :

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

Mais il ne le transforme pas en "MM/jj/aaaa". Lorsque j'utilise fiddler pour vérifier ce qui est envoyé sur le fil, voici le corps du message :

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

Si j'utilise la composition dans fiddler et que je change le corps en :

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

Je reçois la bonne réponse. Ma question est donc la suivante : existe-t-il un moyen de prendre un objet date et de le formater en une chaîne de caractères "MM/jj/aaaa" en utilisant moment.js ? Ou y a-t-il un problème avec la façon dont je récupère la date à partir du sélecteur de date ?

En fait, je suppose que datepicker.getDate renvoie un objet date puisque c'est ce que me dit la documentation de jQuery.

Merci,

148voto

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

...et le format de date MySQL :

StartDate = moment(StartDate).format('YYYY-MM-DD');

80voto

Robbie Points 3642

Je pense que vous avez juste une mauvaise casse dans la chaîne de format. Selon la documentation, cela devrait fonctionner pour vous : MM/DD/YYYY

Documentation de moment.js

10voto

Purva Points 193
.format('MM/DD/YYYY HH:mm:ss')

9voto

Jack Points 3812

Essayez ça :

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

var yourDate = momentObj.format('L');

9voto

Hitesh Sahu Points 12561

Utilisez :

date.format("MM/DD/YYYY") ou date.format("MM-DD-YYYY")}

Autres formats pris en charge pour référence :

Mois :

M 1 2 ... 11 12

Mo 1er 2ème ... 11ème 12ème

MM 01 02 ... 11 12

MMM Jan Fév ... Nov Déc

MMMM Janvier Février ... Novembre Décembre

Journée :

d 0 1 ... 5 6

hacer 0ème 1er ... 5ème 6ème

dd Su Mo ... Fr Sa

ddd Dim Lun ... Ven Sam

dddd Dimanche Lundi ... Vendredi Samedi

Année :

YY 70 71 ... 29 30

YYYY 1970 1971 ... 2029 2030

Y 1970 1971 ... 9999 +10000 +10001

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X