在一次初始化多个Fullcalendar时如何识别选择器id?

在一次初始化多个Fullcalendar时如何识别选择器id?,fullcalendar,Fullcalendar,我在同一页上初始化两个日历,如下所示: html javascript 每个日历都有自己的事件集。如何知道events函数中的选择器id?fullCalendar是否公开$this属性以允许程序员在其上编码 谢谢。您是否尝试过获得$this.attr'id';在fullCalendar函数中?这应该行得通 如果你有问题,试着使用 $calendar1,calendar2.each.fullCalendar{等 要确保单独调用每个对象,然后使用fullCalendar函数中的$this.attr'

我在同一页上初始化两个日历,如下所示:

html

javascript

每个日历都有自己的事件集。如何知道events函数中的选择器id?fullCalendar是否公开$this属性以允许程序员在其上编码

谢谢。

您是否尝试过获得$this.attr'id';在fullCalendar函数中?这应该行得通

如果你有问题,试着使用

$calendar1,calendar2.each.fullCalendar{等


要确保单独调用每个对象,然后使用fullCalendar函数中的$this.attr'id;。

我建议您这样做:

使用选择器创建阵列,并将其设置为日历配置的自定义选项:

var calendars = ['calendar1', 'calendar2'];
for (var i = 0; i < calendars.length; i++) {
    fullCalConfig.id = calendars[i];
    console.log(fullCalConfig);
    $('#'+fullCalConfig.id).fullCalendar(fullCalConfig);
}
我为您设置了一个JSFIDLE:

在没有运气的情况下测试了.console.log'id是:'+$this.attr'id';返回id是:未定义。
$("#calendar1, #calendar2").fullCalendar({
 .....
  events: function(start, end, timezone, callback) {
            var evt1=[{title:'A',start:'2015-02-01'}];
            var evt2=[{title:'B',start:'2015-02-01'}];

            calendarid = $(this);  <== how to get the id?

            if (calendarid = 'calendar1') { callback(evt1); }
            if (calendarid = 'calendar2') { callback(evt2); }                       

  }, // end of events
 .....
}
var calendars = ['calendar1', 'calendar2'];
for (var i = 0; i < calendars.length; i++) {
    fullCalConfig.id = calendars[i];
    console.log(fullCalConfig);
    $('#'+fullCalConfig.id).fullCalendar(fullCalConfig);
}
events: function(start, end, timezone, callback) {
        var evt1=[{title:'A',start:'2015-02-01'}];
        var evt2=[{title:'B',start:'2015-02-01'}];
        calendarid = this.options.id;
        if (calendarid == 'calendar1') { callback(evt1); }
        if (calendarid == 'calendar2') { callback(evt2); }                       
  },