我最近一直在和FullCalendar合作开发一个预订系统。问题是每当我选择一个时间范围时,它都会添加到eventData对象中。我要做的是只选择一个时间范围。
当我单击$('#btn-reserve')按钮时,它应该会在日历上呈现事件。
现在的情况是,即使我之前的选择也会呈现在日历上。我只想渲染我所做的最后一个选择。
以下是我的代码
$('.calendar').fullCalendar({
selectable: true,
select: function(start, end) {
$('#end_time').val(end);
$('#start_time').val(start);
$('#newScheduleModal').modal({
show : true,
backdrop: 'static',
keyboard: false
});
$('#btn-reserve').click(function(){
eventData = {
title: 'Lesson Schedule',
start: start,
end: end
};
$('.calendar').fullCalendar('renderEvent', eventData, true); // stick? = true
$('#newScheduleModal').modal('hide');
});
$('#btn-cancel-reserve').click(function(){
$('.calendar').fullCalendar('unselect');
eventData = {};
})
},
})发布于 2017-09-05 11:44:49
每次选择日历时,都会添加一个新的单击事件。在添加之前,您需要解绑click,如下所示:
$('#btn-reserve').off('click').click(function您可能希望对“#btn-cancel reserve”元素执行相同的操作。
https://stackoverflow.com/questions/46046339
复制相似问题