FullCalendar - 向事件对象添加新属性

问题描述 投票:0回答:1

有很多线程讨论类似的问题,但没有一个是我能真正理解并应用到我的项目中的。

我有一个数据库,其中包含一个包含多个字段的事件表:“字段 1”、“字段 2”、“字段 3”…… 我有一个 PHP 文件 (json.php),json_encode 将该表转换为 JSON 格式,我正在使用 FullCalendar 插件通过以下方式从该文件中获取事件:

events: "json.php"

JSON 格式的每个事件如下所示:

    {
    "Field 1": "value of Field 1",
    "Field 2": "value of Field 2",
    .
    .
    .
    "Field n": "value of Field n",
    "title": "the title"
    "start": "some ISO8601 date string",
    "end": "some ISO8601 date string"
    }

“标题”、“开始”和“结束”字段是最重要的字段,因为默认情况下 FullCalendar 事件函数需要这些字段来创建事件对象和元素。

这很好用。这些事件使用“标题”、“开始”和“结束”属性呈现并显示在日历中。

我的问题是如何让 FullCalendar 将剩余的字段作为属性添加到它创建的事件对象中?

我知道自定义事件函数events(作为函数)是我的朋友,但我对此很陌生,即使阅读了所有相关文档后,我仍然不清楚如何实现这一点,因为我不完全确定该功能是如何工作的,而且我对 AJAX 的了解也很一般。

我确定解决方案非常简单。

提前谢谢你

解决方案:

FullCalender 已经自动执行此操作,因此无需在此处进行额外的工作。它对我不起作用的原因是我的代码中有其他东西。

感谢阿戴森!

json ajax events properties fullcalendar
1个回答
6
投票

FullCalendar 版本 4:任何自定义值都可以在事件对象的“extendedProps”中找到

events: [

                    {
                    title: 'My Title',
                    My_Custom_Value: 'non-standard Event Object field',
                    allDay: false,
                    start: 1501056000000,
                    end: 1501057800000
                    }
],

eventRender: function(info){

                    console.log("_______ info _______\n");
                    console.log(info.event.extendedProps.My_Custom_Value);
}

"扩展道具 一个普通对象,包含在解析期间指定的各种其他属性。接收显式给定的 extendedProps 哈希中的属性以及其他非标准属性。”

https://fullcalendar.io/docs/event-object

© www.soinside.com 2019 - 2024. All rights reserved.