我使用老虎机日历来预订每小时约会
当我第一次点击插槽时(打开jquery上下文菜单)一切正常,我得到插槽事件数据并调用eventClick并打开上下文菜单。
如果那时我点击日历中的另一个插槽,它不会调用eventClick,上下文菜单打开右边但是有旧的事件ID。
如果我在日历外单击然后单击插槽,则会调用eventClick并且工作正常
如果我在eventClick函数中返回false它可以正常工作(每次我点击插槽时调用eventClick)但是没有出现上下文菜单
以下是GitHub上的问题:https://github.com/fullcalendar/fullcalendar/issues/737
完整日历:
$('#calendar').fullCalendar({
theme: true,
header: false,
dayRender: function (date, element, view) { },
defaultView: 'agendaDay',
selectable: true,
selectHelper: true,
eventStartEditable: false,
select: selectDate,
minTime: starttime + ":00:00",
maxTime: endtime + ":00:00",
transmitTZD: false,
slotDuration: "00:" + slotduration + ":00",
// disableResizing: true,
// editable: true,
eventClick: function (calEvent, jsEvent, view) {
eventid = calEvent.id;
shiftDate = calEvent.start;
var status = calEvent.title.split("-")[0].trim();
// return false;
},
events: {
},
eventRender: function (event, element) {
}
});
上下文菜单:
$(function () {
$.contextMenu({
selector: '.bookcls',
trigger: 'left',
callback: function (key, options) {
checkaction(key, eventid);
},
items: {
"start": { name: "start", disabled: false }
},
beforeOpen: function (event, ui) {
}
});
});
修改1:
我在这里发现了同样问题的另一个问题,但我没有得到如何解决我的问题。
我使用左键单击来触发上下文菜单
contextMenu breaking FullCalendar event dragging