4

次の形式の日時があります。

var myDate = "2013-06-07T00:00:00.000Z"

したい

jQuery.datepicker.parseDate( "yy-mm-dd", myDate);

時間の部分は気にしません。

私は得る:

"Extra/unparsed characters found in date: T00:00:00.000Z"

私がこれまでに得た最高のものは次のとおりです。

myDate = myDate.replace('T00:00:00.000Z', '');
myDate = jQuery.datepicker.parseDate("yy-mm-dd", myDate).toUTCString();

助けてください。

4

6 に答える 6

19

new Date(myDate)ISOの日付形式なので、解析する必要がなく直接呼び出せると思います

var date = new Date(myDate);
于 2013-06-07T11:45:37.650 に答える
4

時間の部分を気にしないのであれば、単純に

jQuery.datepicker.parseDate( "yy-mm-dd", myDate.split("T")[0]);

おそらく、一般的な DateTime 処理については、 moment.jsをご覧ください。

于 2013-06-07T11:42:54.467 に答える
0

分割を使用できます

var myDate = "2013-06-07T00:00:00.000Z";
var n=myDate.split("T");
console.log(n); // Pass the date part only to date picker
于 2013-06-07T11:42:37.983 に答える
0

フォーマットを記述するために使用される文字列を変更することで、これを行うことができます (時間が常にゼロであると仮定します)。

var myDate = "2013-06-07T00:00:00.000Z",
    d = jQuery.datepicker.parseDate("yy-mm-ddT00:00:00.000Z", myDate);
d; // Fri Jun 07 2013 00:00:00 GMT+0100 (GMT Daylight Time)

Zただし、これは がタイムゾーンを示すという事実を無視し、UTC代わりにローカル タイムゾーン (私の場合は BST/ GMT+1) を使用します。ただし、これはすぐに修復できます。

d.setMinutes(d.getMinutes() - d.getTimezoneOffset()); // or use UTCMinutes
d; // Thu Jun 07 2013 01:00:00 GMT+0100 (GMT Daylight Time)
// which is now correct in terms of timezone
于 2013-06-07T12:05:01.647 に答える
-1

これはどうですか:

jQuery.datepicker.parseDate( "yy-mm-dd", myDate.substr(0, 10) );
于 2013-06-07T11:43:21.910 に答える