Fullcalendar 单击“下一步”、“上一步”和“今天”按钮时如何更新事件url?

Fullcalendar 单击“下一步”、“上一步”和“今天”按钮时如何更新事件url?,fullcalendar,fullcalendar-5,Fullcalendar,Fullcalendar 5,我有一个关于fullcalendar v5.3.2及其选项的问题 我已经准备好了 var calendarEl = document.getElementById('calendar');

我有一个关于fullcalendar v5.3.2及其选项的问题

我已经准备好了

  var calendarEl = document.getElementById('calendar');                                                                                                                                                           
  var calendar = new FullCalendar.Calendar(calendarEl, {                                                                                                                                                          
    initialView: 'dayGridMonth',                                                                                                                                                                                  
    locale: 'ja',                                                                                                                                                                                                 
    themeSystem: 'bootstrap4',                                                                                                                                                                                    
    height: 700,                                                                                                                                                                                                  
    events: '/api/user/calendar/'+<?= $user->id?>+'<?= date("/Y/m")?>',                                                                                                                                           
});
var calendarEl=document.getElementById('calendar');
var calendar=newfullcalendar.calendar(calendarEl,{
初始视图:“dayGridMonth”,
地区:'ja',
主题系统:“bootstrap4”,
身高:700,
事件:'/api/user/calendar/'++',
});
我试图在单击“下一步”、“上一步”和“今天”按钮时更改事件url并刷新日历。 这是因为我想每月获取事件

这可能吗


致以最诚挚的问候,

我可以像下面这样设置事件url

calendar.setOption('events', 'MY_NEW_URL');  
  var btn = document.getElementsByClassName('fc-button-primary');                                                                                                                                                 
  for(let i = 0; i < btn.length; i++) {                                                                                                                                                                           
    btn[i].addEventListener("click", function() {                                                                                                                                                                 
      var selectedYear = document.getElementsByClassName('fc-toolbar-title')[0].textContent.match(/^[0-9]*/)[0];                                                                                                  
      if(currentYear != selectedYear)                                                                                                                                                                             
      {                                                                                                                                                                                                           
        currentYear = selectedYear;                                                                                                                                                                               
        calendar.setOption('events', '/api/user/calendar/'+<?= $user->id?>+'/'+currentYear+'/'+document.getElementsByClassName('fc-toolbar-title')[0].textContent.match(/^[0-9]*/)[1] );                                }                                                                                                                                                                                                           
    })                                                                                                                                                                                                            
  }
完整的源代码如下所示

calendar.setOption('events', 'MY_NEW_URL');  
  var btn = document.getElementsByClassName('fc-button-primary');                                                                                                                                                 
  for(let i = 0; i < btn.length; i++) {                                                                                                                                                                           
    btn[i].addEventListener("click", function() {                                                                                                                                                                 
      var selectedYear = document.getElementsByClassName('fc-toolbar-title')[0].textContent.match(/^[0-9]*/)[0];                                                                                                  
      if(currentYear != selectedYear)                                                                                                                                                                             
      {                                                                                                                                                                                                           
        currentYear = selectedYear;                                                                                                                                                                               
        calendar.setOption('events', '/api/user/calendar/'+<?= $user->id?>+'/'+currentYear+'/'+document.getElementsByClassName('fc-toolbar-title')[0].textContent.match(/^[0-9]*/)[1] );                                }                                                                                                                                                                                                           
    })                                                                                                                                                                                                            
  }
var btn=document.getElementsByClassName('fc-button-primary');
对于(设i=0;i
是的,你可以,但你不能这样做。根据服务器端代码的工作方式,有两种可能的方法:请参阅和。如果你还什么都不懂的话,读过这些后再问我一次。@ADyson谢谢你提供的信息。我来看看。