我使用的是FullCalendar,我想在每天的所有视图中显示每天的事件数。
示例:
<div class="fc-day-number">1</div>
更改为:
<div class="fc-day-count">X</div>
<div class="fc-day-number">1</div>
请以屏幕截图为例: link
提前致谢
答案 0 :(得分:3)
我希望这有助于某些人,但不知道这是否是您正在寻找的确切答案。
要获取一天发生的事件数,您可以使用以下代码:
$('#calendar').fullCalendar( 'clientEvents', function(eventObj){
if (eventObj.start.isSame('2014-11-21')) {
return true;
} else {
return false;
}
}).length;
根据fullcalendar文档,您可以使用过滤器函数clientEvents搜索事件。
函数中的if语句使用fullcalendar 2.0
中包含的moment.js来比较日期答案 1 :(得分:0)
月视图中的示例 EventsPerDay变量提供计数
eventRender: function (event, element, view) {
$(element).each(function () { $(this).addClass('dateClass-' + event.start.getDate().toString()); $(this).attr('date-num', event.start.getDate().toString()); });
if (view.name == "month") {
// $('.shifts,.tasks,.shiftOut,.shiftIn').hide();
var CellDates = [];
var EventDates = [];
var EventCount = 0, i = 0;
$('.fc-view-month').find('.fc-day-number').each(function () {
CellDates[i] = $(this).text();
// alert( $(this).text());
i++;
});
for (j = 0; j < CellDates.length; j++) {
EventsPerDay = $(".fc-view-month>div>.dateClass-" + CellDates[j]).length;}}
答案 2 :(得分:0)
我在名为
的方法中向fullcalendar.js添加了一行function fetchEventSource(source,fetchID):
function fetchEventSource(source, fetchID) {
_fetchEventSource(source, function(events) {
if (fetchID == currentFetchID) {
if (events) {
if (options.eventDataTransform) {
events = $.map(events, options.eventDataTransform);
}
if (source.eventDataTransform) {
events = $.map(events, source.eventDataTransform);
}
// TODO: this technique is not ideal for static array event sources.
// For arrays, we'll want to process all events right in the beginning, then never again.
for (var i=0; i<events.length; i++) {
events[i].source = source;
normalizeEvent(events[i]);
}
cache = cache.concat(events);
}
pendingSourceCnt--;
if (!pendingSourceCnt) {
reportEvents(cache);
}
}
// add this next line here to dump the running count
$("#someElement").html("There are " + cache.length + " events scheduled for this view");
});
}
这具有利用fullcalendar已经在做什么的净效果。然后,您可以在数据库中保存额外的网络调用。