0

在我的調度程序視圖中,我試圖將用戶可以選擇的時間限制爲最多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); 
    }, 
}); 

回答

3

您可以使用fullCalendar的selectAllow和力矩時間asHours功能:

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

哦,夥計...謝謝!優秀和非常快速的答案。 :-) 週末愉快。 – Drew