因此,我为此项目使用了全日历,在同一页面上有多个日历,每个日历都有自己的上一个/下一个/今天按钮。我要完成的工作是,单击上一个/下一个页面时,它将为页面上的所有日历触发,而不只是在有意义的情况下与之关联的日历。我尝试使用jQuery来完成此操作,因为它们具有相同的类名,以下是我尝试过的click函数的示例,但并没有达到我期望的效果。
$(".fc-next-button").click(function (i) {
var nextBtn = $('.fc-next-button');
//alert(nextBtn.length);
for (var i = 0; i < nextBtn.length; i++) {
nextBtn[i].click();
}
});
例如,我有五个日历,当我单击“下一步”时,该功能会使当前日历提前5周而不是所有日历。任何帮助,将不胜感激。
发生这种情况是因为您的循环单击了所有“下一步”按钮。这实际上意味着您单击的任何一个都会被单击两次-一次由您手动执行,一次由代码执行。另外,单击事件一遍又一遍被调用,因为每次您调用“单击”时,它都会再次触发事件处理程序。
更好的方法是找出按钮属于哪个日历,然后next
在除那个日历之外的所有日历上调用fullCalendar的方法。像这样:
$(".fc-next-button").click(function () {
var calendar = $(this).closest(".calendar");
$(".calendar").not(calendar).fullCalendar('next');
});
该$(".calendar")
位假设您的所有日历元素都具有一个共同的class属性,例如在此演示中:https : //codepen.io/ADyson82/pen/OJVMPVy?editable=true&editors=001
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句