【问题标题】:JS Fullcalendar how to disable allDay events?JS Fullcalendar 如何禁用 allDay 事件?
【发布时间】:2014-09-04 05:54:58
【问题描述】:

我不希望用户能够在我的日历中创建 allDay 事件。我希望日历通过单击日期将视图从月视图更改为议程日视图,但是每次单击日期时,日历都会将视图更改为议程日,但它会尝试创建一个全天事件。

$('#calendar').fullCalendar({
        header: {
            left: 'prev,next today',
            center: 'title',
            right: 'month,agendaWeek,agendaDay'
        },
    dayClick: function(date,allDay, jsEvent, view) {
        if (allDay) {
            // Clicked on the entire day
            $('#calendar').fullCalendar('gotoDate',date)
            $('#calendar').fullCalendar('changeView', 'agendaDay')
        }
        view = $('#calendar').fullCalendar('getView');
    },
    selectable: function(){
        if(view.name=='agendaDay'  ){
            return true;  
        }else{
            return false;
        }
    }, 
    selectHelper: true,
    select: function(start, end) {
        var title = prompt('Event Title:');
        var eventData;
        if (title) {
            eventData = {
                title: title,
                start: start,
                end: end,
            };
            $('#calendar').fullCalendar('renderEvent', eventData, true);
        }
        $('#calendar').fullCalendar('unselect');
    }
});

【问题讨论】:

    标签: javascript jquery fullcalendar


    【解决方案1】:

    您正在处理dayClickselectableselect;而这可以通过只处理select来实现:

     select: function(start, end, jsEvent, view) {
        if (view.name=='month') {
            $('#calendar').fullCalendar('changeView', 'agendaDay');
            $('#calendar').fullCalendar('gotoDate', start)
        } else {
            var title = prompt('Event Title:');
            var eventData;
            if (title) {
                eventData = {
                    title: title,
                    start: start,
                    end: end
                };
                $('#calendar').fullCalendar('renderEvent', eventData, true);
            }
        }
        $('#calendar').fullCalendar('unselect');
    }
    

    请参阅http://jsfiddle.net/wijgerden/t81qtupz/ 以获取使用 FullCalendar v2.1.1 的 JSFiddle 演示;请注意,这仍然允许用户在 agendaWeekagendaDay 视图上创建全天事件。在month 视图中选择日期会将视图切换到agendaDay(多选情况下的第一天),同时仍允许点击事件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多