Ao usar o jquery fullCalendar, por que estou vendo eventos duplicados depois de trocar de mês?
eu souusando o plugin jQuery fullCalendar e eu estou correndo em um problema estranho.
Quando eu carregar o primeiro mês (dezembro de 2013, neste caso), funciona bem. Eu chamo meu evento ajax e retorno um conjunto de eventos. Devolvo 40 eventos do meu servidor e vejo 40 eventos renderizados.
Eu então mudo para o próximo mês (janeiro de 2014) e também funciona bem. (41 eventos do servidor e 41 eventos aparecem na GUI)
Em seguida, clico em BACK para voltar a dezembro de 2013 e recebo o evento ajax, que retorna os mesmos 40 eventos (como acima), mas quando o calendário carrega, ele vê todos os eventos duplicados em dezembro (80 eventos são mostrados na GUI), embora Eu só enviar 40 de volta do servidor e vejo 40 durante o retorno de chamada de eventos.
Aqui está o meu código:
$('#calendar').fullCalendar({
header: {
left: 'prev,next title today',
right: ''
},
lazyFetching: false,
editable: false,
timeFormat: 'H:mm{-H:mm} ',
viewDisplay: function (view) {
ViewDisplay();
},
events: function (start, end, callback) {
$('#Month').val($('#calendar').fullCalendar('getDate').getMonth() + 1);
$("#Year").val($('#calendar').fullCalendar('getDate').getUTCFullYear());
var serializedFormInfo = $('#rotaForm').serialize();
$.ajax({
url: '/SupportRota/GetEvents/',
dataType: 'json',
cache: false,
data: serializedFormInfo,
success: function (data) {
callback(data.RotaEvents);
}
});
}
});
Eu tentei adicionar lazyLoading: false como eu assumi que era algum tipo de cache, mas isso não parece resolver o problema.
Eu coloquei um ponto de interrupção no firebug na linha
callback(data.RotaEvents)
E eu vejo 40 eventos, mas 80 eventos aparecem na tela durante o cenário indicado acima.
Alguma sugestão?