我想在单击事件内的网格时获取日期。
我已经尝试了回调函数。
- dayClick:在事件中不可点击。
- 事件单击:无日期参数
额外信息
我已经为事件创建了一个 AJAX crud 和一个事件内部的 EventException。
假设我们在 20XX 年 12 月 20 日至 30 日有一个活动。
我想在圣诞节使用例外 20XX 年 12 月 25 日。
在 html 中,请注意,我们将向当前的完整日历添加另一个方法处理程序调用 eventClickEx。
eventClickEx: function(jsEvent,ev,view,cellDate){
alert(cellDate);
}
在完整日历中.js。也在完整日历中。在这里,我们调用getCellDate,它目前在视图中不可用。
EventPointing.prototype.handleClick = function (seg, ev) {
var hit = this.view.queryHit(getEvX(ev),getEvY(ev));
var cellDate = this.view.getCellDateEx(hit.row,hit.col);
var res = this.component.publiclyTrigger('eventClickEx', {
context: seg.el[0],
args: [seg.footprint.getEventLegacy(), ev, this.view,cellDate]
});
if (res === false) {
ev.preventDefault();
}
};
由于它不可用,我们将使用 BasicView 类,该类可以访问 dayGrid 对象。
BasicView.prototype.getCellDateEx = function (row,col){
return this.dayGrid.getCellDate(row,col);
};
好了,当您单击事件时,您将从 单元格日期 .
由于每个完整日历日都堆积在该日期发生的事件后面,因此您无法获取点击日期。您有三种可能的解决方法:
- 当您单击事件时,您可以使用日期选择器显示模式并选择"异常日期/范围"...然后,在后端设置事件的中断。
- 要设置"例外日期/范围",您可以直接单击日期(而不是事件(并将其设置为"无效"或其他任何内容。
- 创建一个包含"在此处添加例外"项的上下文菜单,该菜单仅在单击日期(不是事件(时触发
无论如何,如果你有一个10天的事件,并在中间设置一个例外。结束日期应提前一天。你最终将一些日子设置为"假期",检查这个
我希望FullCalendar JS的文档能帮助你。请参阅此处的文章:https://fullcalendar.io/docs/dayClick
尝试:
$('#calendar').fullCalendar({
dayClick: function(date, jsEvent, view) {
alert('Clicked on: ' + date.format());
}
});