110

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

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

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.getDate が日付オブジェクトを返すと仮定しています。これは、jQuery ドキュメントが教えてくれるからです。

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

4

5 に答える 5

80

フォーマット文字列の大文字と小文字が間違っているだけだと思います。ドキュメントによると、これはあなたのために働くはずです:MM/DD/YYYY

moment.js ドキュメント

于 2013-03-14T14:24:18.640 に答える
9

これを試して:

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

var yourDate = momentObj.format('L');
于 2013-03-14T14:23:58.083 に答える