Javascript 带有外部参数的FullCalendar refetchEvents
我正在尝试为Fullcalendar创建一个筛选器。我有四个下拉框,用户可以在其中选择参数。在第一次加载时,它必须显示所有事件,但在使用筛选器时,仅显示选定的事件。我现在知道如何在第一次加载时使用extraParams,但我需要refetchEvents的extraParams 当我进行选择时,refetchEvents功能起作用,但与所选参数不起作用。结果是我仍然看到了所有的事件。如何发送附加参数 这是我所有函数的完整代码。我的问题是关于Javascript 带有外部参数的FullCalendar refetchEvents,javascript,jquery,ajax,fullcalendar,fullcalendar-4,Javascript,Jquery,Ajax,Fullcalendar,Fullcalendar 4,我正在尝试为Fullcalendar创建一个筛选器。我有四个下拉框,用户可以在其中选择参数。在第一次加载时,它必须显示所有事件,但在使用筛选器时,仅显示选定的事件。我现在知道如何在第一次加载时使用extraParams,但我需要refetchEvents的extraParams 当我进行选择时,refetchEvents功能起作用,但与所选参数不起作用。结果是我仍然看到了所有的事件。如何发送附加参数 这是我所有函数的完整代码。我的问题是关于$('cursus tbody')的最后几行。关于('c
$('cursus tbody')的最后几行。关于('click','tr',function()
)
只需在“事件”中添加“数据”而不是“extraParams”
您只需要放置eventSources标记。如果您想动态发送一个extraParam,那么您需要创建一个全局日历变量,并在init方法中再次呈现它
eventSources: {
url: 'service.php',
method: 'POST',
extraParams: {
custom_param1: 'something',
custom_param2: 'somethingelse'
},
failure: function() {
alert('there was an error while fetching events!');
},
},
我也有同样的问题,这个方法对我很有效…
每次我需要更改一个外部参数时,我都会这样做,然后调用calendar.refetchEvents()
events: {
url: 'load_select.php',
method: 'POST',
extraParams: function(){
return {
cursus_id: cursus_id,
evenement_id: evenement_id,
locatie_id: locatie_id,
trainer_id: trainer_id
}
},
failure: function() {
alert('there was an error while fetching events!');
},
},
...
可能值得一读标题为“DynamicExtraParams参数”的部分在“感谢您的评论”中。但如果我理解正确,动态extraParams用于发送计算参数。例如,我需要发送选定的参数。在警报中,我看到了正确的cursus_id,但我无法将其作为参数发送。它不必是实际计算的参数,它只会给您重新计算的机会使用AJAX调用时存在的值(而不是定义事件源时的值,这是您现在拥有的)。例如,您可以编写
return{cursus\u id:localStorage.getItem(“cursus\u id”)};
或return{someValue:document.getElementById(“someValue”).value}
,或您需要的任何东西。谢谢!现在我知道如何使用它了。
eventSources: {
url: 'service.php',
method: 'POST',
extraParams: {
custom_param1: 'something',
custom_param2: 'somethingelse'
},
failure: function() {
alert('there was an error while fetching events!');
},
},
events: {
url: 'load_select.php',
method: 'POST',
extraParams: function(){
return {
cursus_id: cursus_id,
evenement_id: evenement_id,
locatie_id: locatie_id,
trainer_id: trainer_id
}
},
failure: function() {
alert('there was an error while fetching events!');
},
},
...