Javascript 仅允许将事件保存到fullcalendar中的特定月份

Javascript 仅允许将事件保存到fullcalendar中的特定月份,javascript,jquery,fullcalendar,Javascript,Jquery,Fullcalendar,我还有一个问题要问 我想让这些东西只在一个月内保存事件。其他月份应为只读。有没有办法实现这一点 这是我的代码: $j('#calendar').fullCalendar({ header: { left: 'prev,next today', center: 'title', right: 'month,agendaWeek,agendaDay' }, defaultDate:

我还有一个问题要问

我想让这些东西只在一个月内保存事件。其他月份应为只读。有没有办法实现这一点

这是我的代码:

$j('#calendar').fullCalendar({
        header: {
            left: 'prev,next today',
            center: 'title',
            right: 'month,agendaWeek,agendaDay'
        },
        defaultDate: '2017-05-12',
        selectable: true,
        selectOverlap: false,
        weekends: false,

        eventOverlap: false,

        select: function(start, end) {
            var title = prompt('Kostenstelle:');
            var eventData;
            id =   Date.now();
            if (title) {
                eventData = {
                    id: id,
                    title: title,
                    start: start,
                    end: end
                };
                $j('#calendar').fullCalendar('renderEvent', eventData, true); // stick? = true
            }
            saveDay({'id': id,'title': title, 'start': start, 'end': end});
            $j('#calendar').fullCalendar('unselect');
        },

        eventResize: function (event, dayDelta, minuteDelta) {
            saveRange(event);
        },

        eventDrop: function (event, delta, revertFunc, jsEvent, ui, view ){
            saveDrop(event, view);
        },

        eventReceive: function (event, dayDelta, minuteDelta){
            saveDay(event);
        }, 

        eventRender: function(event, element) {
            if(event.className != 'disableDelete'){ element.append( "<span class='closeon'>x</span>" );}
            element.find(".closeon").click(function() {
                 $j('#calendar').fullCalendar('removeEvents',event._id);
                 deleteDay(event);
            });
        },



        droppable: true, // this allows things to be dropped onto the calendar
        drop: function() {
            // is the "remove after drop" checkbox checked?
            if ($j('#drop-remove').is(':checked')) {
                // if so, remove the element from the "Draggable Events" list
                $j(this).remove();
            }
        },
        editable: true
 });
用户应该能够查看其他月份,但不能在其上设置事件。所以我想把其他日子设置为只读。可能吗


谢谢

您可以按如下方式执行此操作

var monthStartDate = new Date('1/1/2017');
var monthEndDate = new Date('1/31/2017');
// monthStartDate and monthEndDate is month range in which you want to save event
select: function(start, end) {
            if(start >= monthStartDate && start <= monthEndDate && end >= monthStartDate && end <= monthEndDate) {
                var title = prompt('Kostenstelle:');
                var eventData;
                id =   Date.now();
                if (title) {
                    eventData = {
                        id: id,
                        title: title,
                        start: start,
                        end: end
                    };
                    $j('#calendar').fullCalendar('renderEvent', eventData, true); // stick? = true
                }
                saveDay({'id': id,'title': title, 'start': start, 'end': end});
                $j('#calendar').fullCalendar('unselect');
            }
 },

这将不允许保存monthStartDate和monthEndDate之间的事件。

共享您的代码我现在在顶部完成了;要在“选择选项”中执行此操作,对吗?