Using moment.js to convert date to string "MM/dd/yyyy"
JavascriptJqueryMomentjsJavascript Problem Overview
I need to take the date value from jquery datepicker turn it into string format "MM/dd/yyyy" so it can do the right ajax post. When the page loads or upon changing the datepicker, a jquery ajax call is made.
I have this code:
var sTimestamp =
moment($("#start_ts").datepicker("getDate")).format("MM/dd/yyyy");
But it doesn't turn it into "MM/dd/yyyy". When I use fiddler to check what is sent down the wire, this is the body:
startTimestamp=03%2FTh%2Fyyyy&endTimestamp=03%2FTh%2Fyyyy&pageSize=50&pageNum=0
If I use the compose in fiddler and change the body to:
startTimestamp=03/13/2013&endTimestamp=03/14/2013&pageSize=50&pageNum=0
I get the right response. So, my question is, is there a way to take a date object and format it to a string "MM/dd/yyyy" using moment.js? Or is there something wrong with the way I get the date from datepicker?
Btw, I am assuming that datepicker.getDate returns a date object since that's what the jQuery docs tell me.
Thank you,
Javascript Solutions
Solution 1 - Javascript
StartDate = moment(StartDate).format('MM-YYYY');
...and MySQL date format:
StartDate = moment(StartDate).format('YYYY-MM-DD');
Solution 2 - Javascript
I think you just have incorrect casing in the format string. According to the documentation this should work for you: MM/DD/YYYY
Solution 3 - Javascript
.format('MM/DD/YYYY HH:mm:ss')
Solution 4 - Javascript
Try this:
var momentObj = $("#start_ts").datepicker("getDate");
var yourDate = momentObj.format('L');
Solution 5 - Javascript
Use: > date.format("MM/DD/YYYY") or date.format("MM-DD-YYYY")}
Other Supported formats for reference:
Months:
> M 1 2 ... 11 12 > > Mo 1st 2nd ... 11th 12th > > MM 01 02 ... 11 12 > > MMM Jan Feb ... Nov Dec > > MMMM January February ... November December
Day:
> d 0 1 ... 5 6 > > do 0th 1st ... 5th 6th > > dd Su Mo ... Fr Sa > > ddd Sun Mon ... Fri Sat > > dddd Sunday Monday ... Friday Saturday
Year:
> YY 70 71 ... 29 30 > > YYYY 1970 1971 ... 2029 2030 > > Y 1970 1971 ... 9999 +10000 +10001