0

JSON 文字列から有効な ISO8601 を取得していますが、フルカレンダーでは正しく表示されません。

JAVA フォーマッタを使用した日付形式の作成: SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.sZ") df.setTimeZone(TimeZone.getTimeZone("Europe/Berlin"))

カレンダーの構成:

ignoreTimezone: false, timeFormat=H:mm{ - H:mm}

JSON-結果:

{
    "id":1,
    "title":"Date with Chuck Norris",
    "start":"2011-12-02T09:30:00.0+0100",
    "end":"2011-12-02T10:30:00.0+0100",
    "color":"",
    "allDay":false
}
  • take start-time 9:30 は DB 値ですが、+0100 が認識されないため、表示される時刻は 9:30 ですが、それは間違っています。10:30 に違いありません。終了日も同じ

...

(正しく解析されることを確認するために、config で別のことを行いました:) eventRender: function(event, element) { event.start = $.fullCalendar.parseDate(event.start); //試してみました $.fullCalendar.parseISO8601() event.end = $.fullCalendar.parseDate(event.end); // $.fullCalendar.parseISO8601() も試しました }

  • onEventRender と parseDate() で試しましたが、何も起こりません

  • onEventRender と parseISO8601() で試してみました -> 何も起こらず、JS-Error (添付ファイル: js-error.png を参照)

jquery 1.6.3 と最新の fullcalendar 1.5.2 を使用

どうもありがとうございました!

乾杯、

マルコ

4

1 に答える 1

0

私の理解によると、あなたの日付形式 [2011-12-02T09:30:00.0+0100] は、ヨーロッパ/ベルリン形式で 9:30 を意味します。イベントを作成しようとしましたが、システムが GMT 形式に設定されていて、カレンダーで 8:30 と表示されています。この形式を渡し、同じタイムゾーン (ヨーロッパ/ベルリン) でチェックすると、違いは見られません。

于 2011-12-02T13:40:35.267 に答える