我正在使用完整的日历插件,因此我加载了当前月份的数据,但是当我点击上一个时,然后再次上一个上一个;我以前的事件是重复的。 例如,如果我在11月份有一个id = 1的事件,而且我在12月份,那么我去了11月;然后我看到我的事件id = 1重复。 这是我的json:
[{"id":2024,"title":"titulo0","start":"2014-12-23 19:22:17","end":"2014-12-23 19:22:17","description":"descripcion0"}]
以下是我加载日历的方式:
function loadEventos() {
var current_url = '';
var new_url = '';
$('#calendar').fullCalendar({
events: '/pushCombos/calendarioAction!getEventosMes.action?mes=' + 1,
header: {
left: 'prev,next today',
center: 'title',
right: ''
},
editable: true,
droppable: true, // this allows things to be dropped onto the calendar
drop: function() {
// is the "remove after drop" checkbox checked?
if ($('#drop-remove').is(':checked')) {
// if so, remove the element from the "Draggable Events" list
$(this).remove();
}
},
eventClick: function(calEvent, jsEvent, view) {
calEvent.title = "CLICKED!";
console.log(moment(calEvent.end).format("YYYY-MM-DD"));
editarEvento(calEvent);
console.log(moment(calEvent.end).format("YYYY-MM-DD"));
$('#calendar').fullCalendar('updateEvent', calEvent);
}
});
}
这是我按钮的代码:
$('.fc-button-group').children().eq(1).click(function(){
var date = $("#calendar").fullCalendar('getDate');
var month_int = moment(date).format("MM");
var year_int = moment(date).format("YYYY");
var events = {
url: '/pushCombos/calendarioAction!getEventosMes.action?mes=1',
data: {
month: month_int,
year: year_int
}
};
$('#calendar').fullCalendar('removeEventSource', events);
$('#calendar').fullCalendar('addEventSource', events);
});
编辑事件并重新加载时;它重新加载很好,但如果我使用下一个和前一个按钮,事件将重复。 为什么会这样? 提前谢谢!
答案 0 :(得分:1)
尝试将您的活动选项更改为:
events: {
url: '/pushCombos/calendarioAction!getEventosMes.action',
type: 'GET',
data: {
mes: 1
},
cache: false,
error: function (jqXHR, textStatus, errorThrow) { //whatever you want }
}
答案 1 :(得分:0)
当您按下前一个按钮时,此插件似乎会自动执行帖子,因为它复制了事件。 我发现的另一个奇怪的事情是,它发送到服务器的月份的第一天和月份的最后一天是错误的。