2017-01-19 11 views
0

Der folgende Code ist der, den ich von Blogs gefunden habe, um die Hintergrundfarbe der Ereigniszelle zu ändern. Aber Event Render ändert die Zellenfarbe aller Ereignisse.fullcalendar verschiedene Ereignisse Zelle Hintergrundfarbe

event Render : function (event, element) { 
    var dataToFind = moment(event.start).format('YYYY-MM-DD'); 
    $(" td [data-date='"+dataToFind+"']").addClass('activeDay'); 
} 

Mein Problem ist, ich habe zwei verschiedene Ereignisse und ich möchte nur für eine Veranstaltung und ein anderes Ereignis sollte normal sein Zellenhintergrundfarbe ändern.

+0

Wäre es nicht einfacher, wenn Sie die Farbe für verschiedene Ereignisse Ereignis ändern, anstatt die Zellenfarbe zu ändern? –

+0

Aber die Anforderung meines Kunden ist, die Zellfarbe zu ändern !! – Sathya

Antwort

0

können Sie die oben auf zwei Arten erreichen

  1. Verwenden Sie den eventAfterAllRender Rückruf statt eventRender und verwenden Sie die Bedingung, die Sie zum Beispiel benötigen Sie Klasse den aktuellen Tag hinzufügen

    var dataToFind = moment().format('YYYY-MM-DD'); 
    $(" td [data-date='"+dataToFind+"']").addClass('activeDay'); 
    
  2. Verwenden Sie den Callback eventRender, in der Funktion schreiben Sie das folgende Snippet.

, wenn Sie hinzufügen möchten 'activeDay' Klasse heute dann

eventRender: function(event, element) { 
    var today = moment().format('YYYY-MM-DD'); 
    var dataToFind = moment(event.start).format('YYYY-MM-DD'); 

    if (today == dataToFind) { 
     $(element).addClass('activeDay'); 
    } 
} 

Hoffnung, dies hilft Ihnen!

0

Vielen Dank für Ihre Antwort, aber die unten eigenen Code hilft mir in meinem Szenario

if (event.title.match("^XXXX:")) { 
         var start = new Date(event.start); 
         var end = new Date(event.end); 
         var dateDiff = end.getDate() - start.getDate(); 
         if (moment(event.start).format('YYYY-MM-DD') != moment(event.end).format('YYYY-MM-DD')) { 
          for (i = 0; i < dateDiff + 1; i++) { 

           $("td[data-date='" + moment(start).add('days', i).format('YYYY-MM-DD') + "']").addClass('activeDay') 
          } 
         } 
         else if (moment(event.start).format('YYYY-MM-DD') == moment(event.end).format('YYYY-MM-DD')) { 
          $("td[data-date='" + moment(event.start).format('YYYY-MM-DD') + "']").addClass('activeDay'); 
         } 
        } 
Verwandte Themen