5

我正在尝试在完整日历中禁用周末,但此选项周末:false

var calendar = $('#calendar').fullCalendar({

    header: {

        left: 'prev,next today',
        center: 'title',
        right: 'month,agendaWeek,agendaDay'
            },

    weekends: false,
    ........});

从日历中删除周末,或者我只想通过更改背景颜色禁用两天并使其无法选择。
我应该怎么办?谢谢你的帮助

4

3 回答 3

15

如果我正确理解您想要的问题:

  1. 以不同的颜色显示周末
  2. 知道这一天是否是周末

首先,您可以使用 css 规则来设置周末元素的样式:

.fc-sat, .fc-sun {
    background-color: red !important;
}

第二点,您可以检查所选日期是否为周末,并随心所欲。您可以通过这种方式使用dayClick( http://arshaw.com/fullcalendar/docs/mouse/dayClick/ ) 事件:

dayClick: function (date, allDay, jsEvent) {
    var checkDay = new Date($.fullCalendar.formatDate(date, 'yyyy-MM-dd'));
    if (checkDay.getDay() == 6 || checkDay.getDay() == 0) alert('Weekend!');
}

你不能禁用一天,因为 FullCalendar 不是日期选择器,所以你不能“禁用”,但你可以处理你想要的一切。

这是一个工作小提琴:http: //jsfiddle.net/IrvinDominin/qLUFg/1/

于 2013-04-17T11:36:09.907 回答
2

除了 Irvin Dominin 的回答:

有时上面答案的第一部分可能会导致小部件标题变成相同的颜色。因此,为了仅处理周末单元格,请使用以下样式:

.fc-sat,
.fc-sun {
  &.fc-day {
    background-color: red !important;
  }
}
于 2020-08-13T09:28:52.037 回答
0

如果您需要更改两个周末的颜色,我建议:

.fc-nonbusiness {
  background-color: yellow;
}
于 2021-02-24T22:34:43.817 回答