Jquery完整日历插槽持续时间和营业时间问题

时间:2017-06-07 06:52:01

标签: jquery fullcalendar-scheduler

我在我的网站上使用jQuery FullCalendar和调度程序来为医生预约。这里营业时间和插槽持续时间根据选定的诊所分支工作时间和部门持续时间动态绑定。所以基于这个工作时间和插槽持续时间有时,工作时间结束或以半覆盖时间段开始。因此,我们无法使用该时段,该部门将失去对待处理时间的约会。有没有解决方案?Here we can not use the time slot 12:00pm because the duration is 45 minutes and the working hours ends at 12.30. So there is a lose of 15 minutes

1 个答案:

答案 0 :(得分:0)

我遇到类似的日历控制问题,当插槽持续时间超过60分钟时,事件单元无法正确呈现。我从StackOverFlow得到了以下解决方案。请尽管它可能对你有所帮助。在fullCalendar事件处理程序中调用以下函数。

function resetCalendarHeight() {
// reset height and contentHeight properties on month view
if (isNullOrEmpty($('.fc-slats')) || $('.fc-slats').length == 0) {
    $('#calendar').css('height', '530px');
    //$('.fc-row.fc-week.fc-widget-content').css('height', '76');
    $('#calendar').fullCalendar('option', 'contentHeight', 'undefined');
    return false;
}
 // day view or week view set the content height to 'auto' 
// then adjust the height  of the container
$('#calendar').fullCalendar('option', 'contentHeight', 'auto');
var bottomDifference = $('#calendar-container')[0].getBoundingClientRect().bottom - $('.fc-slats')[0].getBoundingClientRect().bottom;
var currentHeight = $(".fc-slats > table").css("height").replace('px', '');
var newHeight = parseInt(currentHeight) + bottomDifference;
$(".fc-slats > table").css("height", newHeight);
$('.fc-scroller.fc-time-grid-container').css('overflow-x', 'auto');
$('.fc-scroller.fc-time-grid-container').css('overflow-y', 'overlay');
$('.fc-scroller.fc-time-grid-container').css('height', newHeight);
return true;}



$('#calendar').fullCalendar({
slotDuration:'45',
    events: function (start, end, timezone, callback) {
            resetCalendarHeight();
    }})