我有一个完整的日历,上面有一些添加和删除json源的按钮。脚本完美地添加了源,但是当我尝试删除一个源时,它会删除所有源。我在某处错过了一些东西,也许有人可以帮助我。
$('.mycheckboxes').click(function() {
// retrieve calendar ID from clicked checkbox
var cal = $(this).attr('id');
// define a json event source
var src = {
url: 'calendarJSON.php',
type: 'GET',
data: { calendar_id: cal }
}
if( $(this).is(':checked')) {
$('#calendar').fullCalendar( 'addEventSource', src );
} else {
$('#calendar').fullCalendar('removeEventSource', src );
}
});
为什么要删除所有事件源? 我应该如何指定要删除的源?谢谢。
如(非常好的(文档中所述,传递事件源的 URL 就足够了。
所以试试这个代码:
$('#calendar').fullCalendar('removeEventSource', 'calendarJSON.php' );
在这里,您可以找到一个工作示例 http://jsfiddle.net/domi27/bQXYp/1/
就像 domi27 已经说过的那样,fullcalendar 允许将 URL 作为事件源传递。但它也允许像你一样传递数组。你是对的。在您的情况下,将删除所有源。
我将用一个小技巧来解决这个问题:在您的 URL 中添加一些内容,让完整日历区分事件源!
例如
// define a json event source
var src = {
url: 'calendarJSON.php?dummy=' + cal,
type: 'GET',
data: { calendar_id: cal }
}