不同浏览器中的FullCalendar和Event DateTIme格式

时间:2016-05-31 17:57:52

标签: javascript c# jquery datetime firefox

因此,在我的网站中,我使用完整日历作为预期用途。通过对WebService的JSON调用,在我的aspx代码中,我从数据库中获取给定月份的所有事件。然后将它们送到日历中。这在Chrome下非常有效,并且事件显示正常;不幸的是,在Firefox(和其他人)的帮助下,我并没有那么成功。如果我使用最简单的形式显示事件,它可以在FireFox中正常工作:

events: [
        {

            title: 'My Event',
            start: '2016-05-01',
            description: 'This is a cool event'
        },

        {

            title: 'My Event',
            start: '2016-05-02',
            description: 'This is a cool event'
        }
    ]

但是如果我使用代码,我必须从数据库中动态获取事件并显示它们,然后它们全部失败(再次在Chrome上运行就好了):

 events: $.map(data.d,function (item, i) 
                   { 
                        var event = new Object();
                        event.start = formatDate(item.StartDate);
                        event.end = formatDate(item.EndDate);
                        event.title = item.EventName;
                        return event;
                    }),   

我设法确定item.StartDate和它的formatyee都不起作用,而后者警告'无效的日期'。在尝试将日期格式化为“YYYY-MM-DD”之后进行了一些进一步的调查后,我设法找到this solution,显然与我的相同,并且OP设法解决他们的问题

我似乎无法弄清楚他们是如何设法将格式更改为ISO8601。

1 个答案:

答案 0 :(得分:0)

事实证明我正在转换Date,甚至在Javascript(当我从数据库中获取它)之前转换为错误的格式,即使JS很难修复。对于在不同浏览器上遇到事件问题的其他人,如果您没有使用时间变量,只需将您的开始/结束日期转换为“yyyy-MM-dd HH:mm:ss”或“yyyy-MM-dd”它应该都很好。