[fullcalendar]让 listMonth 显示比月份更多的详细信息
[fullcalendar]Have listMonth display more details than month
我想用不同的视图显示不同的事件信息。
在视图 'month' 中,我只想显示最必要的数据,例如 'title'。
但在视图中 'listMonth' 我想显示有关某个事件的附加信息。
我尝试了以下方法,但不知道为什么在 listMonth 视图中这不会更改事件的标题。
$("#calendar").fullCalendar({
views: {
listMonth: {
buttonText: 'list',
displayEventTime: true
}
},
events: [{
title: 'event1',
id: '1',
start: '2018-01-13T11:00:00',
end: '2018-01-13T15:00:00',
addtlTitle: 'event1, where, what, how'
}],
eventRender: function(event, element, view) {
if (view.name == "listMonth") {
event.title = event.addtlTitle;
}
}
});
根据文档 (https://fullcalendar.io/docs/event_rendering/eventRender/),当 eventRender 运行时,它已经创建了将要添加到日历中的 HTML 元素。这是作为回调中的 "element" 参数提供的。在此阶段修改 "event" 对象没有任何效果 - 它只是在那里您可以访问事件的更多属性,以更改 HTML 元素。
相反,您必须检查 HTML 结构以查找该视图类型中呈现的事件,并确定要更改的内容。在这种情况下,代码非常简单:
eventRender: function( event, element, view ) {
if (view.name == "listMonth")
{
element.find('.fc-list-item-title').html(event.addtlTitle);
}
},
请在此处查看工作演示:http://jsfiddle.net/sbxpv25p/81/
我想用不同的视图显示不同的事件信息。
在视图 'month' 中,我只想显示最必要的数据,例如 'title'。
但在视图中 'listMonth' 我想显示有关某个事件的附加信息。
我尝试了以下方法,但不知道为什么在 listMonth 视图中这不会更改事件的标题。
$("#calendar").fullCalendar({
views: {
listMonth: {
buttonText: 'list',
displayEventTime: true
}
},
events: [{
title: 'event1',
id: '1',
start: '2018-01-13T11:00:00',
end: '2018-01-13T15:00:00',
addtlTitle: 'event1, where, what, how'
}],
eventRender: function(event, element, view) {
if (view.name == "listMonth") {
event.title = event.addtlTitle;
}
}
});
根据文档 (https://fullcalendar.io/docs/event_rendering/eventRender/),当 eventRender 运行时,它已经创建了将要添加到日历中的 HTML 元素。这是作为回调中的 "element" 参数提供的。在此阶段修改 "event" 对象没有任何效果 - 它只是在那里您可以访问事件的更多属性,以更改 HTML 元素。
相反,您必须检查 HTML 结构以查找该视图类型中呈现的事件,并确定要更改的内容。在这种情况下,代码非常简单:
eventRender: function( event, element, view ) {
if (view.name == "listMonth")
{
element.find('.fc-list-item-title').html(event.addtlTitle);
}
},
请在此处查看工作演示:http://jsfiddle.net/sbxpv25p/81/