完整日历防止选择到第二天



在我的fullcalendar实例(2.6.1)中,我希望防止用户在多天内选择一个事件。我一直在查看文档,但似乎找不到禁用这种行为的选项。我的配置是这样的。

$('#calendar').fullCalendar({
    // General display
    header: false,
    weekends: true,
    height: $('#container').height(),
    // Views
    defaultView: 'agendaWeek',
    // Selection
    selectable: true,
    selectHelper: true,
    // Text/Time Customization
    lang: 'nl',
    columnFormat: {
        day: 'D dddd',
        week: 'D dddd'
    },
    // Agenda options
    minTime: '07:30:00',
    maxTime: '18:30:00',
    allDaySlot: false,
    slotDuration: '00:30:00',
    slotEventOverlap: false,
    snapDuration: '00:15:00',
    slotLabelFormat: 'H.mm',
    slotLabelInterval: "00:30:00",
    // Event data
    allDayDefault: false,
    // Event Dragging & Resizing
    editable: true,
    dragOpacity: 1,
    eventConstraint: {
        start: '07:30:00',
        end: '18:30:00'
    },

});

我希望minTimemaxTime能起作用,但显然不是。

我该如何实现这一目标?

提前感谢!

编辑:我找到了一种方法来阻止事件的呈现,使用以下回调:

// Callbacks
select: function( start, end, jsEvent, view) {
    // If the selection spans multiple day
    if ( ! end.isAfter(start, 'day')) {
        window.calendar.fullCalendar('renderEvent', {
            start: start,
            end: end,
            allDay: false
        }, true);
    }
    $('#calendar').fullCalendar('unselect');
}

但是,这并不妨碍您将所选内容一起拖到第二天。

selectConstraint将有助于防止拖动到不同的日期。下面是您可以参考的示例。

$('#calendar').fullCalendar({页眉:{left:"标题",中心:'',右侧:"},事件:事件,selectConstraint:{//这将停止拖动数天开始:"00:01",结束时间:'23:59',}});

我指的是FullCalendar v2.8.0版本。

使用事件约束

eventConstraint:{
                start: '07:00:00',
                end: '22:00:00'
            },

https://fullcalendar.io/docs/v3/eventConstraint

相关内容

  • 没有找到相关文章

最新更新