【问题标题】:why globalization in web.config makes fullcalendar not to render events为什么 web.config 中的全球化使 fullcalendar 不呈现事件
【发布时间】:2015-02-17 07:24:34
【问题描述】:

我在 Mozilla 中看到的这个问题,但在 IE 中可以正常工作

我在 document.ready 的 _calendar.cshtml 部分视图中有这个

$.ajax({
        type: "POST",
        contentType: "application/json",
        data: "{}",
        url: "/Home/GetEvents",
        dataType: "json",
        success: function (data) {
            $('#calendar').fullCalendar({
                editable: false,
                eventColor: '#F09A18',
                textColor: 'white',
                lang: 'en-IN',
                eventLimit: 1,
                eventLimitText: 'More',
                weekMode: 'liquid',
                events: $.map(data, function (item, i) {
                    var event = new Object();
                    event.start = new Date(item.StartDate);
                    event.title = item.EventName;
                    event.brief = item.EventBrief;
                    return event;
                }),

            });

        },
        error: function (XMLHttpRequest, textStatus, errorThrown) {
            $("#cal_error").text(errorThrown);
        }
    });

如果我不在 web.config 文件中包含以下代码,它会呈现事件

<globalization culture="en-IN" uiCulture="en-IN"/>

我也试过保留

<globalization culture="auto" uiCulture="auto"/>

但没有变化。 当我在 web.config 中包含全球化时,Firefox 中根本不会显示事件,但它们在 IE 中仍然可以正常工作。

以下是我在 fullcalendar.js 中的默认设置

titleRangeSeparator: ' \u2014 ', // emphasized dash
    monthYearFormat: 'MMMM YYYY', // required for en. other languages rely on datepicker computable option

    defaultTimedEventDuration: '02:00:00',
    defaultAllDayEventDuration: { days: 1 },
    forceEventDuration: false,
    nextDayThreshold: '09:00:00', // 9am

    // display
    defaultView: 'month',
    aspectRatio: 1.35,
    header: {
        left: 'title',
        center: '',
        right: 'today prev,next'
    },
    weekends: true,
    weekNumbers: false,

    weekNumberTitle: 'W',
    weekNumberCalculation: 'local',

    //editable: false,

    // event ajax
    lazyFetching: true,
    startParam: 'start',
    endParam: 'end',
    timezoneParam: 'timezone',

    timezone: 'local',

    //allDayDefault: undefined,

    // locale
    isRTL: false,
    defaultButtonText: {
        prev: "prev",
        next: "next",
        prevYear: "prev year",
        nextYear: "next year",
        today: 'today',
        month: 'month',
        week: 'week',
        day: 'day'
    },

    buttonIcons: {
        prev: 'left-single-arrow',
        next: 'right-single-arrow',
        prevYear: 'left-double-arrow',
        nextYear: 'right-double-arrow'
    },

    // jquery-ui theming
    theme: false,
    themeButtonIcons: {
        prev: 'circle-triangle-w',
        next: 'circle-triangle-e',
        prevYear: 'seek-prev',
        nextYear: 'seek-next'
    },

    dragOpacity: .75,
    dragRevertDuration: 500,
    dragScroll: true,

    //selectable: false,
    unselectAuto: true,

    dropAccept: '*',

    eventLimit: false,
    eventLimitText: 'more',
    eventLimitClick: 'popover',
    dayPopoverFormat: 'LL',

    handleWindowResize: true,
    windowResizeDelay: 200 // milliseconds before an updateSize happens

当我包含全球化标签时,fullcalendar 会发生什么。我还尝试将 timeZone 默认设置为 'local''UTC'false,但即使这样也没有用?谁能帮我解决这个问题?

【问题讨论】:

    标签: jquery asp.net-mvc fullcalendar globalization momentjs


    【解决方案1】:

    好的。在谷歌搜索了这么多之后,我找到了答案。

    我只需要为活动设置如下日期:

     events: $.map(data, function (item, i) {
                        var event = new Object();
                        event.start = moment(item.StartDate).utc();
                        event.title = item.EventName;
                        event.brief = item.EventBrief;
                        return event;
                    }),
    

    这就像一个奇迹。但我必须保持我的 web.config 文件如下

    <globalization culture="auto" uiCulture="auto"/>
    

    而不是&lt;globalization culture="en-IN" uiCulture="en-IN"/&gt;

    当我将其保留为 culture="en-IN" 时,即使我使用时刻转换日期对象,它也不起作用。仍在弄清楚为什么,但暂时上述解决方案可行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-07-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多