如何以全日历方式从当前月份视图隐藏上个月和下个月的单元格?

nir*_*rux 4 css jquery fullcalendar

我想隐藏上个月和下个月日期的单元格,这些单元格将在当前月份视图中显示。我尝试添加CSS,但对我不起作用:

<style>
    .hiddenEvent{display: none;}
    .fc-other-month .fc-day-number { display:none;}

    td.fc-other-month .fc-day-number {
        visibility: hidden;
    }
</style>
Run Code Online (Sandbox Code Playgroud)

我想隐藏单元格,以便用户无法通过单击下个月的日期来创建事件。 在这里,用户还可以在空白单元格上创建事件,即下个月的日期 谢谢。

Ste*_*veP 9

从3.3.0版开始,您现在可以使用showNonCurrentDates:false。

        $('#calendar_1').fullCalendar({
        header: {
            left: '',
            center: 'title',
            right: ''
        },
        defaultView: 'month',
        editable: true,
        allDaySlot: true,
        selectable: true,
        selectHelper: true,
        selectOverlap: false,
        fixedWeekCount: false,
        showNonCurrentDates: false,
        select: function (start, end) {
            var title = "Available";
            var evid = SaveEvent(start, end, '1');
            $('#calendar_1').fullCalendar('unselect');
        },
        eventClick: function (calEvent, jsEvent, view) {
            var ev_id = calEvent.ID;
            var st_dt = calEvent.start;
            var ed_dt = calEvent.end;
            infoEventShow('1', ev_id, st_dt, ed_dt);
        },
        slotMinutes: 15,
        events: '/Aircrew/GetEvents/',
        eventColor: '#339900'
    });
Run Code Online (Sandbox Code Playgroud)

参考https://fullcalendar.io/docs/display/showNonCurrentDates/


Pat*_*tel 4

尝试这个 :

td.fc-other-month {
   visibility: hidden;
}
Run Code Online (Sandbox Code Playgroud)

对我有用。我不明白为什么它不适合你,但如果不适合,请告诉我。

编辑:

设置为 后visibilityhidden您将必须更改代码的方法,从而在单击单元格时生成均匀的代码。在那里,你需要做这样的事情:

if(event.start.getMonth() !== view.start.getMonth()) { return false; }
Run Code Online (Sandbox Code Playgroud)

如果也需要进行比较,则类似view.end

另外,您应该使用fixedWeekCount将其实现为 来限制日历月视图中的周数fixedWeekCount: false