我有一个点击事件,在它里面我正在重新加载 fullcalendar。但是在重新加载后,我想隐藏执行点击事件的当前元素。但不知何故它不起作用。下面是我的代码。

 $(document).on("click", 'a.btnExpandCollapseBook', function (e) {
       $('#calendar2').fullCalendar('destroy');
       calendarOptions.events = tempSourcearr; // assigning the events
       $('#calendar2').fullCalendar(calendarOptions);
       $(this).hide();// This is not working...
 });

最佳答案

您可以向事件添加自定义属性,例如“隐藏”真/假,并使用 eventRender 控制基于“隐藏”属性的可见性

http://jsfiddle.net/hmspswu3/

var calendarOptions = {
  defaultDate: '2015-12-01',
  events: [{
    id: 1,
    start: '2015-12-03',
    end: '2015-12-07',
    title: 'Event 1',
    hidden: false
  }, {
    id: 2,
    start: '2015-12-13',
    end: '2015-12-17',
    title: 'Event 2',
    hidden: false
  }],
  eventRender: function(event, element, view) {
    return !event.hidden;
  },
  eventClick: function(event, jsEvent, view) {
    event.hidden = true;
    calendarOptions.events = $('#calendar').fullCalendar('clientEvents');
    $('#calendar').fullCalendar('destroy');
    $('#calendar').fullCalendar(calendarOptions);
  }
};

$('#calendar').fullCalendar(calendarOptions);

关于javascript - 完整的日历销毁事件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34101886/

10-12 12:39
查看更多