FullCalendar:显示每个项目添加的总活动小时数
我正在使用Adam Shaw的FullCalendar和Knokoutjs。我可以添加、删除和拖放活动。在周模式和日模式中,我希望显示在该特定日期添加的事件的总小时数。
如果我删除、调整事件大小或移动事件,上述总时间应该会更改。
我已经通过按id计算并附加到DOM,从而使用了DOM操作。最初,我将其硬编码为0。这只适用于当前视图。如果我单击下一步并再次返回到以前的日期,它将重置为0。
解决方案
我已经在这里发布了我的问题的答案:fullcalendar: how to add total duration of all events for each day
您可以通过:
实现这一点viewRender: function(view, element) {
$.each($(".fc-day-top"), function(key, val) {
var dateYMD = $(this).attr("data-date");
$(this).append("<div class='fc-dailytotal' id='dailytotal-"+dateYMD+"'></div>");
});
},
eventRender: function(event, element, view) {
$(".fc-dailytotal").text(0); //Clear total sum
},
eventAfterRender: function(event, element, view) {
var currentday = moment(event.start).format("YYYY-MM-DD");
if (event.totalhrs > 0) {
var prev = $("#dailytotal-"+currentday).text() || 0;
$("#dailytotal-"+currentday).text(+prev + +event.totalhrs);
}
}
相关文章