fullcalendar - eventclick更改URL

时间:2018-02-22 16:17:03

标签: javascript jquery fullcalendar

如何在eventClick中更改活动的网址?我更改了它但是当我在日历上更新事件时它没有采取我的更改它具有原始值。

var path = window.location.origin + window.location.pathname + calEvent.url;
calEvent.url = path;
//update the calEvent
$('#calendar').fullCalendar('updateEvent', calEvent);

1 个答案:

答案 0 :(得分:0)

当eventClick运行时为时已晚,您已经点击了该事件,并且已经开始重定向到现有事件URL中指定的位置。

如果你想操纵来自服务器的URL值,我建议你在eventDataTransform回调中执行此操作,该回调在每个事件呈现到日历之前运行,例如:

eventDataTransform: function( eventData ) {
    eventData.url = window.location.origin + window.location.pathname + eventData.url;
    return eventData;
},

有关回调的详细信息,请参阅https://fullcalendar.io/docs/event_data/eventDataTransform/

但是,我不知道您的网址究竟是什么格式,但我觉得您的代码实际上是不必要的。我认为有意义的是你必须将相对的URL输出到日历数据中,例如“test.php”或“images / test.jpg”。

如果您保留原样并单击它们,浏览器将自动将当前站点地址添加到它们之前,然后尝试在那里导航。您运行的代码只是硬编码浏览器将自动执行的操作,我认为您不需要打扰。