Fullcalendar:如果存在事件,则在'dayClick'弹出窗口中显示

时间:2013-01-18 19:52:41

标签: jquery fullcalendar

我试图让这项工作的方式是“阻止一天”不可用和可用的想法。即使有活动,我怎么能让整天的块可点击?

如果我想阻止某一天的活动,我希望在弹出窗口中看到该事件。

其中一个问题是,目前唯一激活“dayClick”的方法是点击空白区域。但是,如果你点击一个事件,它将不会触发“dayClick”。非常感谢任何帮助!

1 个答案:

答案 0 :(得分:2)

单击事件(eventClick)时,dayClick所需的数据不可用。我不知道如何钻取事件以获得dayClick。也就是说,我想不出一种方法来调用$ .trigger来调用dayClick。

您应该能够在eventClick回调中执行您需要的操作。创建单个事件时,请将属性设置为可用或不可用。也许是这样的:

var events = [{
                 id: 1,
                 title: 'This is a blocked day',
                 start: 'Wed, 18 Oct 2009 08:00:00 EST',
                 color:'#fff',// red
                 blocked: true
             },
             {
                 id: 2,
                 title: 'This is an available day',
                 start: 'Thu, 19 Oct 2009 08:00:00 EST',
                 color: '#07A800', // green
                 blocked: false
             }];

$('#cal').fullcalendar({
    events: events,
    eventClick: function(calEvent, jsEvent, view) {
        if(calEvent.blocked == true) {// be sure to set a 'blocked' property in your event
            alert('This time is not available!');                
        } else {
            $('#newEventDialog').dialog('open');// open a dialog to save new event
        }
    }
});