所以我正在使用FullCalendar库中的Scheduler插件。我已经有我的事件系统工作,让我通过模态框编辑事件。
现在我想对资源做同样的事情,但我在那里碰壁。
除此之外,我试过这个
resourceRender: function(resource, cellEls) {
cellEls.on('click', function(resource) {
$.getScript(resource.edit_url);
})
}
但是我无法访问cellEls方法中的资源。
我没有找到任何这方面的例子,所以我甚至不确定它是否可能。
有什么想法吗? 提前致谢
答案 0 :(得分:1)
任何"点击"的第一个参数callback是JavaScript事件对象。你不能改变它。
只需允许"资源"对象自然传播到事件处理程序而不是尝试重新声明它:
resourceRender: function(resource, labelTds, bodyTds) {
labelTds.on('click', function(event) {
console.log(resource);
$.getScript(resource.edit_url);
});
}
答案 1 :(得分:0)
此帖子已经过时。此后在“完整日历资源时间轴计划”版本4.0中已更改。我对DOM对象“ el”使用了“ addEventListener”。请参见下面的代码片段,调用“ resourceRender”,以便您可以看到渲染完成后如何在资源单元中的click事件中访问它。
document.addEventListener('DOMContentLoaded', function () {
var calendarEl = document.getElementById('calendar');
var calendar = new FullCalendar.Calendar(calendarEl, {
schedulerLicenseKey: '<hidden>',
plugins: ['interaction', 'resourceTimeline'],
resourceLabelText: 'Resources',
resources: "<see fullcalendar support docs>",
events: "<see fullcalendar support docs>",
resourceRender: function (renderInfo) {
renderInfo.el.addEventListener("click", function(){ console.log('clicked:' + renderInfo.resource.id); });
}
});
calendar.render();
});