如何禁用fullcalendar中的某些日期范围?

时间:2011-05-13 12:37:17

标签: jquery fullcalendar

我想禁用日期范围之前和之后的日子,有人知道我该怎么做? (对不起我的英语不好)。

埃尔南

2 个答案:

答案 0 :(得分:6)

所以你的意思是在ACTUAL日历上你不希望别人预定某些日期?

看看这个链接

http://jsfiddle.net/ppumkin/7MTdn/

点击15天后的一天,警报会发生变化..这样的事情?酵母

如果这就是你的意思,我可以尝试根据你的需要改变它。

$('#mycalendar').fullCalendar(
            {
             header: {
                    left: 'prev,next today',
                    center: 'title',
                    right: 'month,agendaWeek,agendaDay'
                    },


                dayClick: function( date, allDay, jsEvent, view ) { 
                    var myDate = new Date();

                    //How many days to add from today?
                    var daysToAdd = 15;

                    myDate.setDate(myDate.getDate() + daysToAdd);

                    if (date < myDate) {
                        //TRUE Clicked date smaller than today + daysToadd
                    alert("You cannot book on this day!");    
                    }
                    else
                    {
                        //FLASE Clicked date larger than today + daysToadd
                        alert("Excellent choice! We can book today..");    
                     }   


            },      

             events: [

                        {
                            title  : 'event2',
                            start  : '2011-03-10',
                            end    : '2011-05-5'
                        }
                    ]
           }); 

请注意,这与1.6.4兼容,而且从版本2+开始,大部分API都发生了变化,事情应该有所不同,但一般事件和逻辑应该是相同的。

答案 1 :(得分:0)

在fullCalendar v3中,我们可以使用selectConstraint

selectConstraint: {
   start: moment().format('YYYY-MM-DD'),
   end: '2200-01-01'
},

如果您不希望活动在过去几天被丢弃,可以使用

eventConstraint: {
  start: moment().format('YYYY-MM-DD'),
  end: '2200-01-01'
},