Fullcalendar议程视图和日事件不会在特定时间(小时)内呈现事件

时间:2013-04-29 11:46:08

标签: fullcalendar renderer dayofweek

我正在使用来自http://arshaw.com/fullcalendar/的Fullcalendar,我有搜索stackoverflow但没有适合我的问题,或者我没有理解。如果这已经是安装,请粘贴链接。

我有一个返回事件的xml文件:

事件示例:

<event allDay="false" editable="true" end="Mon Apr 29 2013 15:30:00 GMT+0100" id="53" start="Mon Apr 29 2013 08:30:00 GMT+0100" title="tesete"/>

如果您注意到开始和结束日期,则时间格式保存为这样。

当我像这样获取事件时:

events: function(start, end, callback) {
            $.ajax({
                type: 'POST',
                url: url,
                dataType:'xml',
                crossDomain: true,
                data: {
                    // our hypothetical feed requires UNIX timestamps
                    start: Math.round(start.getTime() / 1000),
                    end: Math.round(end.getTime() / 1000),                      
                    'ajax':true,
                    'acc':'2',                      
                },
                success: function(doc) {                            
                    var events = [];
                    $(doc).find('event').each(function() 
                    {
                        events.push({
                            id: $(this).attr('id'),
                            title: $(this).attr('title'),
                            start: $(this).attr('start'),
                            end: $(this).attr('end'),
                            allDay: $(this).attr('allDay'),
                            editable: $(this).attr('editable')
                        });                             
                    });                                     
                    callback(events);
                }
            });     
        },

所有事件都在月视图中正确显示,但是当我切换到agendaView或dayView时,事件仅在allDay栏中,它们不会在特定小时之间呈现。

 start="Mon Apr 29 2013 08:30:00 GMT+0100" end="Mon Apr 29 2013 15:30:00 GMT+0100" id="53"

例如从8:30到15:30

我缺少什么?

解决问题的方法:

events: function(start, end, callback) {
            $.ajax({
                type: 'POST',
                url: 'myurl',
                dataType:'xml',
                crossDomain: true,
                data: {
                    // our hypothetical feed requires UNIX timestamps
                    start: Math.round(start.getTime() / 1000),
                    end: Math.round(end.getTime() / 1000),                      
                    'ajax':true,
                    'acc':'2',                      
                },
                success: function(doc) {                            
                    var events = [];
                    var allday = null; //Workaround 
                    $(doc).find('event').each(function() 
                    {               

                        if($(this).attr('allDay') == "false") //Workaround 
                                allday = false; //Workaround 
                        if($(this).attr('allDay') == "true") //Workaround 
                                allday = true; //Workaround                         

                        events.push({
                            id: $(this).attr('id'),
                            title: $(this).attr('title'),
                            start: $(this).attr('start'),
                            end: $(this).attr('end'),                       
                            allDay: allday,
                            editable: $(this).attr('editable')
                        });                             
                    });                                     
                    callback(events);
                }
            });     
        },

1 个答案:

答案 0 :(得分:0)

Var allDay不能是字符串。它应该是allDay=false,不带引号