我只是想知道我在控制台时如何获得结束时间。log(事件)然后end时间为null,所以每当我在周日历时间上删除任何事件时,它都应该返回一些结束时间。
所以,如何在删除外部元素时,甚至从一列移动到另一列时获得结束时间,这将调用eventDrop,此时我也需要结束时间。
请不要编辑我的小提琴,如果可能的话,请创建一个新的小提琴并将其发送给我,这样我就可以看一看了,因为我昨天花了很多时间来寻找它,但找不到任何有效的解决方案。
提前感谢,这里是链接:
jsfiddle.net/jimil/8hqe3wxd/3/
http://jsfiddle.net/dg9gp3e3/3/
如果外部事件没有关联的事件数据,则将使用defaultTimedEventDuration或defaultAllDayEventDuration。在您的fiddle中,由于事件的allDay未设置为true,因此正在使用defaultTimedEventDuration。您可以通过获得默认值
var defaultDuration = $('#calendar').fullCalendar('option', 'defaultTimedEventDuration');
defaultDuration = moment.duration(defaultDuration); // to add to date need to convert to a moment duration
eventDrop 示例
eventDrop: function(event, delta, revertFunc) {
//inner column movement drop so get start and call the ajax function......
console.log(event.start.format());
console.log(event.id);
var defaultDuration = moment.duration($('#calendar').fullCalendar('option', 'defaultTimedEventDuration')); // get the default and convert it to proper type
var end = event.end || event.start.clone().add(defaultDuration); // If there is no end, compute it
console.log('end is ' + end.format());
//alert(event.title + " was dropped on " + event.start.format());
},
对于跌落事件:
drop: function(date) {
//Call when you drop any red/green/blue class to the week table.....first time runs only.....
console.log("dropped");
console.log(date.format());
console.log(this.id);
var defaultDuration = moment.duration($('#calendar').fullCalendar('option', 'defaultTimedEventDuration'));
var end = date.clone().add(defaultDuration); // on drop we only have date given to us
console.log('end is ' + end.format());
}
另一个选项是使用forceEventDuration选项,如果未指定结束日期,则会设置结束日期。