Ich muss den Datumswert von Jquery Datepicker in das String-Format "MM/TT/JJJJ" umwandeln, damit er den richtigen Ajax-Beitrag ausführen kann. Beim Laden der Seite oder beim Ändern des Datepickers wird ein Jquery-Ajax-Aufruf durchgeführt.
Ich habe diesen Code:
var sTimestamp =
moment($("#start_ts").datepicker("getDate")).format("MM/dd/yyyy");
Es wird jedoch nicht in "MM/TT/JJJJ" umgewandelt. Wenn ich mit Fiedler prüfe, was über den Draht geschickt wird, ist dies der Körper:
startTimestamp=03%2FTh%2Fyyyy&endTimestamp=03%2FTh%2Fyyyy&pageSize=50&pageNum=0
Wenn ich die Komposition in Fiedler verwende und den Körper in Folgendes ändere:
startTimestamp=03/13/2013&endTimestamp=03/14/2013&pageSize=50&pageNum=0
Ich bekomme die richtige Antwort. Also, meine Frage ist, gibt es eine Möglichkeit, ein Datumsobjekt zu nehmen und es mit moment.js in eine Zeichenfolge "MM/tt/jjjj" zu formatieren? Oder stimmt etwas nicht mit der Art, wie ich das Datum von Datepicker bekomme?
Übrigens, ich gehe davon aus, dass datepicker.getDate ein Date-Objekt zurückgibt, da dies die jQuery-Dokumente mir sagen.
Vielen Dank,
Ich denke, Sie haben nur ein falsches Gehäuse in der Formatzeichenfolge. Laut Dokumentation sollte dies für Sie funktionieren: MM/DD/YYYY
StartDate = moment(StartDate).format('MM-YYYY');
... und MySQL-Datumsformat:
StartDate = moment(StartDate).format('YYYY-MM-DD');
Versuche dies:
var momentObj = $("#start_ts").datepicker("getDate");
var yourDate = momentObj.format('L');
.format('MM/DD/YYYY HH:mm:ss')
Benutzen:
datum.format ("MM/TT/JJJJ") oder Datum.format ("MM-TT-JJJJ")}
Andere unterstützte Formate als Referenz:
M1 2 ... 11 12
Mo 1. 2. ... 11. 12.
MM01 02 ... 11 12
MMMJan Feb ... Nov. Dez
MMMMJanuar Februar ... November Dezember
d 0 1 ... 5 6
do 0th 1st ... 5th 6th
dd So Mo ... Fr Sa
ddd So Mo ... Fr Sa.
dddd Sonntag Montag ... Freitag Samstag
YY70 71 ... 29 30
YYYY1970 1971 ... 2029 2030
Y1970 1971 ... 9999 +10000 +10001