繁体   English   中英

FullCalendar对象无法理解对象数组参数

[英]Object array argument isn't being understood by FullCalendar object

我正在使用jQuery从ajax调用中填充对象数组,以便将事件数据从我们的系统显示到日历中。 由于某种原因,它不会将其识别为事件,也不会在日历上显示它们。 请参见下面的代码。

我已经检查了100多次,并且确定数据的格式正确。 events变量在运行时也不为空。

var events = [];

$.ajax({
        type: 'GET',
        url: "ajax/shared.ashx",
        dataType: 'json',
        data: 'm=get-staff-schedule',
        success: function (json) {
            console.log(json);
            $.each(json.response.data, function (i, app) {
                events.push({
                    id: app.id,
                    title: app.ADMIN_NAME,
                    daysOfWeek: app.day - 1,
                    startTime: app.time_in,
                    endTime: app.time_out
                });

            });
            renderCalendar(events);
        }
    });

function renderCalendar(events) {
        var calendarEl = document.getElementById('calendar');
        var d = new Date();
        var date = d.getFullYear() + '-' + padDigits(d.getMonth() + 1, 2) + '-' + padDigits(d.getDate(), 2)
        debugger
        var calendar = new FullCalendar.Calendar(calendarEl, {
            plugins: ['interaction', 'dayGrid', 'timeGrid', 'bootstrap'],
            themeSystem: 'bootstrap',
            defaultView: 'timeGridWeek',
            defaultDate: date,
            header: {
                left: 'prev,next today',
                center: 'title',
                right: 'dayGridMonth,timeGridWeek,timeGridDay'
            },
            events: events
        });

        calendar.render();
    }

这是渲染的空白日历的图像。 另外,以下是FullCalendar的文档供参考: https ://fullcalendar.io/docs/event-parsing

空的

更换

events.push({
                    id: app.id,
                    title: app.ADMIN_NAME,
                    daysOfWeek: app.day - 1,
                    startTime: app.time_in,
                    endTime: app.time_out
                });

通过

events.push({
                    id: app.id,
                    title: app.ADMIN_NAME,
                    daysOfWeek: app.day - 1,
                    start: app.time_in,
                    end: app.time_out
                });

我想到了! 只花了我两个小时!

基本上,此对象需要所有字符串。 因此,需要将daysOfWeek值从整数转换为字符串。 这是我所做的:

events.push({
   id: app.id,
   title: app.ADMIN_NAME,
   daysOfWeek: (app.day - 1) + '',
   startTime: app.time_in,
   endTime: app.time_out
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM