6

Adam Shawの素晴らしいjQueryプラグイン-FullCalendarを使用して、プロジェクトにイベントを追加する方法を模索しています:開発中のオンラインバルーン注文ページ

基本的に、「step1」をクリックして「pickup in shop」を選択すると、ページにカレンダービューが表示され、「week」ボタンの右上隅をクリックして、ビューを週単位に変更できます。基礎。私が達成しようとしているのは、クライアントが1日のうちに空のスロットをクリックすると、その場所でイベントを作成できるようにすることです。これがcustom.jsの私のコードです:

dayClick: function() 
            {

                var n = parseInt(this.className.match(/fc\-slot(\d+)/)[1]);
                alert('a day has been clicked on slot ' + n);

                //trying to add an event using the renderEvent() method.
                $('#' + type + 'Calendar').fullCalendar('renderEvent', 
                        {
                            title : 'my pickup slot',
                            start : new Date(y,m,d, 12, 30),
                            end   : new Date(y,m,d, 13, 00),
                        });
            }

FullCalendarのAPIメソッドrenderEventを使用して、そのようなイベントを作成しようとします。ただし、コードはエラーなしで実行され、どのスロットがクリックされたかを示すプロンプトが表示されますが、カレンダーにそのような新しいイベントはレンダリングされません。

これを行う別の方法はありますか、または私のコードは何か間違っていますか?

事前に感謝しますので、どんな提案でも大歓迎です。

4

1 に答える 1

5

単純な見落としです。type関数内の値はfrom 呼び出しloadCalender(type)に設定されます。pickupCalendarcloseStep1OpenSetp2("pickupCalendar");

しかし、あなたは$('#' + type + 'Calendar')これを評価し$('#pickupCalendarCalendar')、このIDを持つ要素はありません。正しいのは$('#pickupCalendar')、パラメータの Calendar を削除するか、+ 'Calendar'. その後、それはうまくいくはずです

于 2010-03-22T03:25:31.560 に答える