Écouteur pour "changement de date" dans FullCalendar?
y a-t-il un moyen d'attacher un auditeur à FullCalendar qui sera déclenché chaque fois que la date actuellement affichée est changée, c.-à-d. Si vous êtes en mode mois, aller au mois suivant déclencherait l'événement passant la Date du premier jour du mois, et la même chose pour les semaines changeantes en mode semaine, jour en vue Jour ect.
le seul auditeur exposé qui serait proche de cela est le dayClick callback, mais ce n'est pas bon, car il ne se déclenche que lorsqu'un utilisateur clique dans une journée réelle cellule, pas par exemple quand les commandes Next/prev/today sont pressées dans la barre d'en-tête.
je veux que cette fonctionnalité soit capable de synchroniser le mois actuellement visualisé dans FullCalendar avec un composant ExtJS datepicker, donc si le mois visualisé est modifié dans FullCalendar, alors le Datepicker est mis à jour pour montrer ce même mois. (pensez à L'interface utilisateur de Google Calendar avec son "mini calendar" en haut à gauche étant le curseur de données)
2 réponses
projet de Loi,
je sais que cette question est assez ancienne, mais j'avais besoin d'une solution et je me suis dit que je la poserais ici pour les autres. J'ai résolu le problème moi-même en attachant le viewDisplay
évènement à mon calendrier (cet événement a été supprimé dans v2 de FullCalendar,viewRender
peut être utilisé à la place).
$("#calendar").fullCalendar({
viewDisplay: function (element) {
}
});
une fois que vous avez accès au paramètre element, vous pouvez obtenir la date en utilisant element.start
ou element.visStart
. Si vous êtes dans l'affichage mois, départ vous fournir le premier jour du mois que vous regardez, visStart vous donnera le premier jour visible du mois
C'est la façon dont je l'ai fait:
$("#calendar").fullCalendar({
viewRender: function(view, element){
var currentdate = view.intervalStart;
$('#datepicker').datepicker().datepicker('setDate', new Date(currentdate));
}
});
en vue du mois,intervalStart
retourner le premier jour du mois, affichée sur le FullCalendar, plutôt que le premier visible de jour, qui est habituellement un jour vers la fin du mois précédent.