0

次のような日付で JSON 経由でロードされたデータテーブルを使用しています: 2010-06-03 Opera と Chrome では、正しい日付が 06/03/2010 として表示されます。Firefox Windows (プラグインなしのセーフ モードでも) では、NaN/NaN/NaN が発生します。デバッグ コンソールを使用すると有効な日付が表示されますが、Firefox Windows では「無効な日付」が表示されます。おまけに、大量のプラグインを備えた Firefox Mac では、有効な日付があります!

日付列の設定はこちら

oColumn['editor'] = 
   new YAHOO.widget.DateCellEditor({asyncSubmitter:UpdateRowData});
oColumn['formatter'] = YAHOO.widget.DataTable.formatDate;
oField['parser'] = 'date';

ありがとう、
セドリック

4

3 に答える 3

2

「2010-06-03」は有効な Date オブジェクトを返さないことが判明しました (少なくとも FF/Win では)。ブラウザ間の互換性のために、値が Date コンストラクターで受け入れられる形式であることを確認してください: https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/Date

于 2010-06-03T21:00:26.663 に答える
1

ジェニーのリファレンスは良いですが、掘りたくない場合は、合格する必要があります。

「YYYY、MM、DD」

YUIパーサーに接続して、ChromeだけでなくFF/Winでも機能するようにします。

于 2011-07-15T23:06:55.157 に答える
0

状況に応じて、これを解決する別の方法は、「JSON」データに実際の日付コンストラクターを含めることです。これを行うと、標準のJSONではなくなり、ブラウザで評価する必要があります。

例えば

{'duration': 75, 'end_time': new Date(Date.UTC(2008,11,23,17,45,00,0)),
 'start_time': new Date(Date.UTC(2008,11,23,16,30,00,0))}

データはすでに日付オブジェクトであるため、ブラウザでデータを解析する必要がなくなるという利点があります。

欠点は、サーバーからクライアントブラウザに有効なJSONを送信しなくなることです。

于 2010-07-08T21:16:33.720 に答える