如何在fullcalendar jQuery中更改参数名称“ title”,“ start”和“ end”

时间:2019-12-02 11:40:57

标签: javascript jquery json fullcalendar fullcalendar-3

在jquery的fullcalendar脚本中,我想通过数据库表中的列名来更改关键字“ title”,“ start”和“ end”。

当我在数据库表中更改列名时的全日历工作:

我将“名称”更改为“ title”,将“ date_start”更改为“ start”,将“ date_end”更改为“ end”,好的,但是我想做相反的事情。

                        $(document).ready(function() {

                            var calendar = $('#calendar').fullCalendar({
                                editable: false,
                                events: "{{ route('products') }}",
                                displayEventTime: false,
                                eventRender: function(event, element, view) {
                                    if (event.allDay === 'true') {
                                        event.allDay = true;
                                    } else {
                                        event.allDay = false;
                                    }
                                },
                                eventClick: function(event) {

                                    $.getJSON("{{ route('products') }}", function(user) {
                                        var convertToTableau = Array.from(Object.values(user));
                                        console.log(convertToTableau);
                                        var us = $.grep(convertToTableau, function(v) {


                                            return v.id == event.id;
                                            console.log(event.id);

                                        });
                                        $("#firstname").text(us[0].title);
                                        $("#idpilote").text(" Id : " + us[0].id);
                                        $("#firstname").text(" Name : " + us[0].title);
                                        $("#metier").text(" Job : " + us[0].profession);
                                    });
                                }

                            });
                        });
                    </script> ```

1 个答案:

答案 0 :(得分:1)

您不能将fullCalendar expects更改为事件中重要字段的默认属性名称(当然,如果您修改了fullCalendar源代码,则可以,但是您不想这样做) )。

但是,如果由于某些原因您不想更改服务器/数据库代码以匹配(但是为什么不完全匹配?),则可以通过以下方式在eventDataTransform回调中在两者之间创建简单的映射全日历。该函数针对加载到fullCalendar中的每个事件运行一次,并允许您在fullCalendar开始处理事件之前更新事件对象的属性。在这里,您可以将服务器生成的属性名称中的数据复制到fullCalendar可以识别的属性名称中。

这是一个例子:

eventDataTransform: function(event) {
  event.title = event.name;
  event.start = event.date_start;
  event.end = event.date_end;
  return event;
}