AgendaWeek 时间段始终显示默认值,即 00.00.00(小时:分钟:秒)

AgendaWeek Time slots always shows default value i.e 00.00.00 (hour:minute:second)

我已经实现了完整的日历,默认视图为 agendaWeek。我的动机是获取日历中点击插槽的日期和时间。因此,作为一个实现,我在 calendar.js 文件中完成了以下代码:

dayClick: function (date, allDay, jsEvent, view) {
        var now = new Date();
        var targetDate = new Date();          
        targetDate.setDate(targetDate.getDate() + 10);
        if ((date.setHours(0, 0, 0, 0) < now.setHours(0, 0, 0, 0)) || (date.setHours(0, 0, 0, 0) > targetDate.setHours(0, 0, 0, 0))) {
            alert("Wrong slot of booking!!!");
        }
        else {
            console.log(date);
            alert(date.getDate()+','+ (date.getMonth()+1) +',' + date.getYear());                
        }
     },

所以在控制台中它显示日期正确但时间是 00:00:00。 所以如果有人能帮助我解决这个问题就太好了。

您正在从 "date" 参数中获取点击日期和时间,并且您正在通过以下函数设置为 (0,0,0,0)。

date.setHours(0, 0, 0, 0)

获取该变量的克隆并使用它来检查您的条件。

确保克隆该变量而不仅仅是传递引用。希望能解决您的问题。