【发布时间】:2019-08-15 13:14:32
【问题描述】:
我正在处理完整的日历。 在从互联网上获得参考后,我手动添加了月份下拉列表。 到目前为止它工作正常。 问题是,到 9 月为止,它运行良好。 但是当我选择十月时,它只显示九月,然后对于十一月,它显示十月,而对于十二月,它只显示十一月。十二月在此下拉列表和日历中不起作用。
我的代码如下:
$(".fc-right").append('<select class="select_month"><option value="">Select Month</option><option value="1">Jan</option><option value="2">Feb</option><option value="3">Mrch</option><option value="4">Aprl</option><option value="5">May</option><option value="6">June</option><option value="7">July</option><option value="8">Aug</option><option value="9">Sep</option><option value="10">Oct</option><option value="11">Nov</option><option value="12">Dec</option></select>');
$(".select_month").on("change", function (event) {
$('#calendar_full').fullCalendar('changeView', 'month', this.value);
$('#calendar_full').fullCalendar('gotoDate', y + '-' + this.value + '-1');
}); // y assigned as selected year.
如果我将 10 月 11 日、11 月 12 日和 12 月 13 日的选项值更改为 10 月和 11 月恢复正常,12 月仍然无法正常工作。
如何解决。请帮忙。
【问题讨论】:
-
您是否有理由使用自己的下拉菜单来选择月份,而不是使用 FullCalendar 提供的控件?
-
如果没有工作示例,我假设您可能没有向插件传递
changeView或gotoDate方法的正确/兼容日期/值。 -
如果我没记错的话,
changeViewtakes the view as the first parameter ('month'), and aDateor equivalent string as the second。您正在传递一个数字(作为字符串)。尝试传入'2019-' + ('00' + this.value).slice(-2) + '-01'之类的内容。 -
@Barmar 也许吧?在这种情况下,OP 可以尝试为
gotoDate调用传递相同的值。我认为重点是使用格式正确的日期。 -
changeView和gotoDate可能都不需要。
标签: javascript date fullcalendar momentjs fullcalendar-3