我正在通过Adam Shaw(http://arshaw.com/fullcalendar/)实现FullCalendar。日历切换FullCalendar不按预期方式运行
每个用户都有它通过JSON加载默认自己的个人日历:
$('#calendar').fullCalendar({
header: {
left: false,
center: 'title',
right: false
},
editable: false,
events: 'http://WEBSERVER.com/calendar/json/<?=$gid?>'
});
(日历/ JSON /是从MySQL查询结果产生JSON的PHP文件)
不过,也有也共享日历。可用日历显示为按钮列表如下:
<div class="btn-group" id="cal-lists">
<div class="btn btn-large" id="1">John's Personal Calendar</div>
<div class="btn btn-large add-cal" id="2">Company Calendar</div>
<div class="btn btn-large add-cal" id="3">Confrence Room Calendar</div>
</div>
然后我有以下的jQuery是应该充分利用FullCalendar addEventSource方法。
$("div.add-cal").click(function()
{
var json = 'http://WEBSERVER.com/calendar/json/';
var cal = $(this).attr('id');
var src = json+cal;
$('#calendar').fullCalendar('addEventSource', src);
$(this).removeClass('add-cal');
$(this).addClass('rem-cal');
});
$("div.rem-cal").click(function()
{
var json = 'http://WEBSERVER.com/calendar/json/';
var cal = $(this).attr('id');
var src = json+cal;
$('#calendar').fullCalendar('removeEventSource', src);
$(this).removeClass('rem-cal');
$(this).addClass('add-cal');
});
所以每当用户点击
<div class="btn btn-large add-cal" id="2">Company Calendar</div>
$( “div.add-CAL”)。点击(函数()应该被调用,它增加了资源,然后改变来自CSS类“add-cal”to“rem-cal”。
然后,如果再次单击该按钮,应调用$(“div.rem-cal”)。click(function() 。
点击公司日历不断添加C ompany日历事件显示。
第一次点击时,该类会适当变为“rem-cal”,但在此之后不会更改。因此,如果用户点击了三次,则会显示三个事件。
我对jQuery/JavaScript不是很好,所以任何建议都非常感谢。
在此先感谢。
太棒了,这个作品完美!谢谢,我会尽快接受这个答案。 – kxhawkins 2012-04-26 18:08:06
我只是这样做,但获得相同的重复http://stackoverflow.com/a/13342193/295783 – mplungjan 2012-11-12 13:02:10