【问题标题】:jQuery Fullcalendar - per event change editable event to non-editable (or vice versa)jQuery Fullcalendar - 每个事件将可编辑事件更改为不可编辑(反之亦然)
【发布时间】:2019-03-11 12:52:01
【问题描述】:

我一直在玩官方的Fullcalendar CodePen

并且找不到使事件不可编辑(或可编辑)的方法。

在演示中,设置了全局选项:editable: true。如果我尝试通过以下方式更改每个事件的此设置:

  eventRender: function(event, element){
    event.editable=false;
    }

没有任何变化。事件仍然都是可编辑的(可调整大小,可拖动,..)。我找到了这个帖子jquery-fullcalendar-change-editable-properties-of-particular-event-on-a-calendar

建议在哪里:

editable: false,
eventRender: function(event, element) {
    if(event.userId === user.id) {
        event.editable = true;
    }
}

但这不起作用。在eventRendereventAfterRender 下更改event.editable,不会生效。 是否可以动态更改此设置(每个事件)?

【问题讨论】:

    标签: fullcalendar


    【解决方案1】:

    您可以使用eventDataTransform 函数来检查您的事件是否具有所需的用户ID,然后将可编辑属性更改为true。

    $('#calendar').fullCalendar({
      header: {
      left: 'prev,next today',
      center: 'title',
      right: 'month,agendaWeek,agendaDay'
    },
      events: 'https://fullcalendar.io/demo-events.json?overload-day',
      eventDataTransform: function(event){
      if(event.userId === user.id){
      event.editable=true;
      }
     return event;
    }
    });
    
    });
    

    编辑:我认为 eventRender 函数是用来修改元素的。要修改事件,您应该使用 eventDataTransform 函数

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-03-30
      • 1970-01-01
      • 2015-09-21
      • 1970-01-01
      • 2020-08-17
      • 1970-01-01
      • 1970-01-01
      • 2022-01-03
      相关资源
      最近更新 更多