1

私は長い形式に変換する次の日付を持っています。これは chrome では正常に動作しますが、firefox で作業するとエラーが発生します。日付オブジェクトは無効な日付を示しています。以下のコードがクロムで正常に動作する場合、何が問題になっていますか?

startdate= "2013-08-23 14:59"
alert(startdate);
startdate = new Date(startdate);
alert(startdate);     //Invalid date
startdate = startdate.getTime();
alert(startdate);     //NAN

http://jsfiddle.net/hulk_hulk/kvtW3/

4

5 に答える 5

2

このようにしてみてください..

startdate="2013-08-23 14:59:00"
var a=startdate.split(" ");
var d=a[0].split("-");
var t=a[1].split(":");
startdate= new Date(d[0],(d[1]-1),d[2],t[0],t[1],t[2]);
alert(startdate);     //correct date
startdate = startdate.getTime();
alert(startdate);

希望は便利で、IE FF Chrome などで動作します。

于 2013-08-23T10:02:27.227 に答える
1

ライブラリを使用して、複数のプラットフォーム間で一貫した日付の解析を処理します。このように。

https://code.google.com/p/datejs/

于 2013-08-23T09:54:26.803 に答える
0

Javascript の日付は多くの形式をサポートしており、これらのいずれかを試してみてください..!!

コードをこれに変更すると役立つ場合があります

startdate= "23 09 2013, 14:59:00"
alert(startdate);
startdate = new Date(startdate);
alert(startdate);     //Invalid date
startdate = startdate.getTime();
alert(startdate);  

次の形式で値を設定することもできます。この形式のいずれかで試してください。

date1 = new Date("25 Dec, 1995 23:15:00")
date2 = new Date("2009 06 12,12:52:39")
date3 = new Date("20 09 2006,12:52:39")

JavaScript の日付の詳細については、こちらをご覧ください

于 2013-08-23T10:06:45.310 に答える
0

Firefox は new Date() を必要とします。次の方法で試してください。

    startdate= "2013-08-23 14:59"
    alert(startdate);

    startdate = new Date(2013,08,23,14,59,00,00);

    alert(startdate);     //Invalid date
    startdate = startdate.getTime();
    alert(startdate);     //NAN
于 2013-08-23T09:58:14.173 に答える