2017-06-06 9 views
0

C#.NetプロジェクトでFullcalendar 3.3.1を使用しています。fullcalendar day一日オフにする

私は、Webページがmonth図を示し、デフォルトでは、カレンダー

$("#calendar").fullCalendar({ 
    'header': { 
     'left': "prev,next today", 
     'center': "title", 
     'right': "month,agendaWeek,agendaDay" 
    }, 
    'dayClick': function (myDate, jsEvent, view) { 
     var tmpDate = moment(myDate.format()); 

     if (view.name !== "agendaDay") { 
      console.log("clicked on non agendaDay: " + tmpDate.format()); 
      $("#calendar").fullCalendar("gotoDate", tmpDate.format()); 
      $("#calendar").fullCalendar("changeView", "agendaDay"); 
     } else { 
      console.log("clicked on agendaDay"); 
     } 
    }, 
    ... 

を定義します。日ブロック(実際にはagendaDayを除くすべてのビュー)をクリックすると、クリックした日付のagendaDayビューに移動します。今朝これをやっていたが、今停止している。私がクリックした日付に関係なく、今は "今日"になります。

私はこれをフィドルでテストしましたが、そこで動作します。私はconsole.logの予定日を見ることができます。 Chromeデベロッパーツールを使用してgotoDateコールでブレークポイントを設定すると、正しい日付が表示されますが、最終結果は「今日」になります。

私はmyDate引数を直接使用していましたが、それはmomentオブジェクトですが、それは機能しませんでした。私はtmpDate変数を使用して、何かが私の下から日付を変更していないことを確認することに決めました。

私には何が欠けていますか?

編集それの一体のために、私はそれが正しく新しいビューの日付を設定し、gotoDatechangeView呼び出しの順序を逆転させました。移動図

+0

何かのようなサウンドは、 'today'のイベントハンドラをオーバーライドしています。 –

答えて

1

ビューを変更すると、今日の日付にリセットされます。

あなたがchangeView、その後gotoDateまたは同時に新しいビューに切り替えながら使用すると、新しい日付に移動したい場合、あなたはそのように日付パラメータを指定するかすべきである:ここでは

$('#calendar').fullCalendar('changeView', 'agendaDay', '2017-06-01'); 

が働いていますjsfiddle

関連する問題