moment.jsを使用して日付を文字列「MM / dd / yyyy」に変換する


89

jquery datepickerから日付値を取得して、文字列形式「MM / dd / yyyy」に変換して、正しいajax投稿を実行できるようにする必要があります。ページが読み込まれるか、日付ピッカーを変更すると、jqueryajax呼び出しが行われます。

私はこのコードを持っています:

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

ただし、「MM / dd / yyyy」にはなりません。フィドラーを使用して何が送信されているかを確認すると、これが本体です。

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

フィドラーでコンポーズを使用し、ボディを次のように変更した場合:

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

私は正しい反応を得ます。だから、私の質問は、日付オブジェクトを取得し、moment.jsを使用して文字列「MM / dd / yyyy」にフォーマットする方法はありますか?または、datepickerから日付を取得する方法に問題がありますか?

ところで、jQueryのドキュメントに書かれていることなので、datepicker.getDateは日付オブジェクトを返すと思います。

ありがとうございました、

回答:



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

...およびMySQLの日付形式:

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

2
MySQLの日付形式(YYYY-MM-DD)もアルファベット順に並べ替えることができ、ファイル名で使用してファイルを並べ替えることができます。明確で人間が読める形式(dd / mmやmm / ddのように混乱しない)、ISO8601などがあります。正気のフォーマットのみ。「2016年1月2日」はただ...「なに?どこから来たの?そこではどんな日付形式を使っているの?」;)
Tedd Hansen

8

これを試して:

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

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

7

使用する:

date.format( "MM / DD / YYYY")またはdate.format( "MM-DD-YYYY")}

参照用にサポートされているその他の形式:

月:

M 1 2 ... 11 12

Mo 1st 2nd ... 11th 12th

MM 01 02 ... 11 12

MMM 1月2月... 11月12月

MMMM 1月2月... 11月12月

日:

d 0 1 ... 5 6

やる 0番目の第一...第5回6日

dd Su Mo ... Fr Sa

ddd 日月...金土

dddd 日曜日月曜日...金曜日土曜日

年:

YY 70 71 ... 29 30

YYYY 1970 1971 ... 2029 2030

Y 1970 1971 ... 9999 +10000 +10001


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.