FullCalendar Supprimer un événement externe par ID

J’utilise FullCalendar et jQuery UI pour faire glisser “Days Off” sur mon calendrier en tant qu’événements en arrière-plan.

Comme vous ne pouvez pas cliquer sur les événements en arrière-plan dans FullCalendar, je crée une liste avec mes jours de congé et un bouton “Supprimer” à côté d’eux avec l’identifiant de l’événement comme atsortingbut de données.

Cependant, lorsque je clique sur le bouton Supprimer, il ne supprime pas l’événement, même s’il possède le bon identifiant.

S’il vous plaît jeter un oeil à cette jsFiddle: https://jsfiddle.net/aaroncadrian/odhL964L/

Afin de vous montrer que l’ID d’événement a été correctement mis à jour, j’ai supprimé le rendu en arrière-plan de l’événement afin que vous puissiez cliquer sur l’événement pour afficher son ID. Vous pouvez également voir l’ID d’événement sur le bouton et dans son atsortingbut data-id. Voici le code pour supprimer l’événement, ce qui ne fonctionne pas.

$('.remove').click(function(){ // Get the ID for the event from the button var id = $(this).data('id'); // Remove the event. **DOES NOT WORK** $('#calendar').fullCalendar('removeEvents', id); }); 

Pouvez-vous s’il vous plaît laissez-moi savoir comment je peux supprimer un événement en cliquant sur le bouton correspondant? Encore une fois, idéalement, j’aimerais que ces événements entraînés soient rendus en tant qu’événements d’arrière-plan.

METTRE À JOUR

J’ai ajouté un événement et le bouton correspondant à la page au chargement, et la fonction permettant de supprimer l’événement fonctionne depuis le rendu de l’événement au chargement de la page. Alors, que dois-je faire différemment pour que les événements externes qui ont été ajoutés au calendrier puissent être supprimés de la même manière?

https://jsfiddle.net/oLe2Lgxs/

Changé votre

 var button = ''; // Create remove button with data-id atsortingbute with event ID 

à

 var button = ''; // Create remove button with data-id atsortingbute with event ID 

et le

 $('.remove').click(function(){ 

à

 $('#daysOff').on('click', 'button.remove', function(){ 

pour l’obtenir en supprimant les éléments du calendrier.

Vous ne savez pas pourquoi utiliser l’événement interne _id fonctionne là où votre identifiant atsortingbué ne fonctionnait pas.

Vous pouvez également supprimer l’entrée date / bouton li avec $ (this) .parent (). Remove (); à l’intérieur du gestionnaire de clics.