调度程序中可选时间的FullCalendar限制数量

问题描述:

在我的调度程序视图中,我试图将用户可以选择的时间限制为最多4小时。我认为selectConstraint是门票,但没有看到应用最大可选持续时间的方法。调度程序中可选时间的FullCalendar限制数量

我一直希望沿着selectConstraint: {duration: '04:00'}duration: '240'(几分钟)的路线。

或...可能会限制可选插槽的数量?我把它分成15分钟的增量,那么有没有办法将选择限制在最多16个插槽?

我一直在冲刷 FullCalendar Docs(这是我认为是相当贫穷的国际海事组织......),但我似乎无法找到关键因素。

有人吗?

$('#schedulerCalendar').fullCalendar({ 
    defaultView: 'agendaDay', 
    defaultDate: moment(systemDate), 
    eventClick: $scope.eventClick, 
    editable: true, 
    eventOverlap: false, 
    selectable: true, 
    selectHelper: true, 
    select: $scope.dayClick, 
    slotDuration : '00:15:00', 
    slotEventOverlap: false, 
    allDaySlot: false, 

    // Display only business hours (8am to 5pm) 
    minTime: "08:00", 
    maxTime: "17:00", 

    businessHours: { 
     dow: [ 1, 2, 3, 4, 5], // Monday - Thursday 
     start: '08:00', // start time (8am) 
     end: '17:00', // end time (5pm) 
    }, 

    hiddenDays: [ 0, 6 ], // Hide Sundays and Saturdays 

    events: function (start, end, timezone, callback) { 
     callback($scope.eventSources); 
    }, 
}); 

您可以使用fullCalendar的selectAllow和力矩时间asHours功能:

$('#schedulerCalendar').fullCalendar({ 
    //.... 
    selectAllow: function(selectInfo) { 
     var duration = moment.duration(selectInfo.end.diff(selectInfo.start)); 
     return duration.asHours() <= 4; 
    }, 
    //... 
}); 
+0

哦,伙计...谢谢!优秀和非常快速的答案。 :-) 周末愉快。 – Drew