Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/473.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 单击“完整日历”编辑资源_Javascript_Jquery_Fullcalendar_Fullcalendar Scheduler_Fullcalendar 3 - Fatal编程技术网

Javascript 单击“完整日历”编辑资源

Javascript 单击“完整日历”编辑资源,javascript,jquery,fullcalendar,fullcalendar-scheduler,fullcalendar-3,Javascript,Jquery,Fullcalendar,Fullcalendar Scheduler,Fullcalendar 3,所以我使用的是FullCalendar库版本3中的调度程序插件。我已经有了我的事件系统,允许我通过一个模式框在点击时编辑事件 现在我想对资源做同样的事情,但我遇到了麻烦 除此之外,我试过这个 resourceRender: function(resource, cellEls) { cellEls.on('click', function(resource) { $.getScript(resource.edit_url); }) } 但我无法访问cellEls

所以我使用的是FullCalendar库版本3中的调度程序插件。我已经有了我的事件系统,允许我通过一个模式框在点击时编辑事件

现在我想对资源做同样的事情,但我遇到了麻烦

除此之外,我试过这个

resourceRender: function(resource, cellEls) {
    cellEls.on('click', function(resource) {
        $.getScript(resource.edit_url);
    })
}
但我无法访问cellEls方法内部的资源

我没有找到任何这样的例子,所以我甚至不确定这是否可能

有什么想法吗? 提前感谢

任何“单击”回调的第一个参数是JavaScript事件对象。你不能改变这一点

只需允许“资源”对象自然向下传播到事件处理程序中,而不是尝试重新声明它:

resourceRender: function(resource, labelTds, bodyTds) {
    labelTds.on('click', function(event) {
        console.log(resource);
        $.getScript(resource.edit_url);
    });
}

这个帖子已经过时了。这在完整日历资源时间线计划版本4.0中已经更改。我对DOM对象“el”使用了一个“addEventListener”,请参见下面调用“resourceRender”的代码段,这样您就可以看到如何在渲染完成后访问资源单元上的单击事件

    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();
});
document.addEventListener('DOMContentLoaded',函数(){
var calendarEl=document.getElementById('calendar');
var calendar=新的完整日历。日历(calendarEl{
SchedulerLisceKey:“”,
插件:['interaction','resourceTimeline'],
resourceLabelText:“资源”,
资源:“,
事件:“”,
resourceRender:函数(renderInfo){
renderInfo.el.addEventListener(“单击”,函数(){console.log('clicked:'+renderInfo.resource.id);});
}
});
calendar.render();
});

工作正常,谢谢。不过,我可能还有另一个问题。如果我评论
respond|u to do | format |。。。结束
在我的控制器中,我收到此错误
ResourcesController#更新缺少此请求格式和变量的模板。request.formats:[“text/html”]request.variant:[]
。我不知道该如何处理。如果它工作正常,请将答案标记为已接受和/或向上投票-谢谢:-)。如果您还有其他问题,请提出新问题。我不能在这里回答这个问题,它似乎与您的原始版本无关,而且您的评论中没有足够的信息。如果您仍然是版本3的用户,它还没有过时。3和4是如此不同的代码,但这么多人仍在使用和工作的V3,IMO,它只是更好地标记问题(如我刚刚做的)与相关版本,而不是考虑问题或答案是“过时”…相反,它们只是“不同”