/ / re-dessiner le calendrier complet à la volée - calendrier complet

re-dessiner le calendrier complet à la volée - calendrier complet

Je veux que le fullCalendar se redessine (toute la structure et tous les événements) sans recharger la page.

Scénario: J'utilise un patch de fullCalendar qui supporte le Affichage des ressources. Pour quelques actions utilisateur, je souhaite modifier les ressources. Mais je ne veux pas recharger la page.

Réponses:

19 pour la réponse № 1

Vous pouvez "détruire" et "rendre" le calendrier dans son ensemble. Mais cela pourrait être fastidieux - en particulier dans les navigateurs plus anciens.

$("#calendar").fullCalendar("destroy");
$("#calendar").fullCalendar("render");

Si vous n’avez pas réellement besoin de rendre la table, mais que vous restituez simplement les événements, vous pouvez utiliser la méthode "rerenderEvents":

$("#calendar").fullCalendar("rerenderEvents");

Espérons que cela aide!


1 pour la réponse № 2

Le problème:

"... Le problème est que le calendrier est initialisé alors que le modal ou div n'est pas visible ..." basé sur ce lien entrez la description du lien ici

À mon avis, détruire n'est pas nécessaire dans ce cas, seul le rendu permet de voir le calendrier.

Ma solution:

<script type="text/javascript">
$("#objectname").show(0,onObjectShow);
function onObjectShow(){$("#calendar").fullCalendar("render");}
</script>

Vous devez vous assurer que l’objet (conteneur decalendrier) est entièrement visible. Par exemple, ma première erreur a été de mettre ce code sur l'événement "onClick", et l'événement click est déclenché avant d'afficher le conteneur d'objet et n'a aucun effet.

Solution basée sur cette référence.


1 pour la réponse № 3

Utilisez refetchResources: .fullCalendar( "refetchResources" )

Cela va récupérer et refaire le rendu des données de ressources, selon le Documentation FullCalendar.