Table 基于日历中查看的月份

Table based on the month viewing in calendar

我按照这个问题创建了一个 table ->

我的 table 连接到通过 fullCalendar 库创建的日历,我在 modal 中实现了这个 table。 我还找到了一种将当前可视化月份作为 table 的 header 的方法(通过使用 getView)。但是现在我有这个错误: 这是我的 table 第一次打开时的显示方式(正确的查看方式): normal

这是我第二次打开它时的显示方式,也是在不同的月份:wrong one

这些是 mod 我对链接到此处开头添加的问题的代码所做的:

function renderTable($targetTable, date, view, element ) { 
    
    var view = $('#calendar').fullCalendar('getView');
    var start = view.intervalStart._d;
    var end = view.intervalEnd.subtract(1, 'days');
    alert(end);
        
        
    //prende mese e anno attualmente visualizzati e lo imposta come titolo del modal nell'HTML
    const months = ["Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Giugno", "Luglio", "Agosto", "Settembre", "Ottobre", "Novembre", "Dicembre"];
    
   //calcola il numero dei giorni nel mese (30/31/28)
   let numberOfDaysInMonth = new Date(end).getDate(); // just get the last day
    
   //create the table header to display the month and date, and make is span all the days + the names column + the total column.
   let $tableHeader = $(`<tr><th colspan="${numberOfDaysInMonth+2}" style="text-align: center;">${months[start.getMonth()]} ${start.getFullYear()}</th></tr>`)

我找到了解决方案

基本上我调用构建我的函数的地方 table 我添加了这个:

    //table2 is the ID of my table
var table = document.getElementById('table2');

//i check if the table is empty; if it is than I render the thead and tbody
if (table.rows.length == 0){
    var date = new Date();
    renderTable($('#table2'), date);        
}
//if not, before I delete whats inside and than I render it
else if(table.rows.lenght != 0){
    $("#table2 thead").empty();
    $("#table2 tbody").empty();
    var date = new Date();
    renderTable($('#table2'), date);
}