2010-08-27 4 views
7

Ich muss mehr Felder für meinen Kalender erstellen (Vollkalender mit mysql mit PHP verbunden). Und ich habe EventRender gelesen, aber ich bin mir nicht ganz sicher über die Syntax und wo ich sie hinstellen sollte.Zusätzliche Felder zum Vollkalender hinzufügen

Derzeit habe ich folgendes;

$calendar.fullCalendar({ 
    timeslotsPerHour : 4, 
    defaultView:'agendaWeek', 
    allowCalEventOverlap : true, 
    overlapEventsSeparate: true, 
    firstDayOfWeek : 1, 
    businessHours :{start: 8, end: 18, limitDisplay: true }, 
    daysToShow : 7, 
     theme: true, 
     header: { 
      left: 'prev,next today', 
      center: 'title', 
      right: 'month,agendaWeek,agendaDay' 
     }, 

     editable: true, 
     events: "json-events.php", 
    eventRender : function(calEvent, $event) { 
     calEvent.distributor //this is my new field 

    }, 

Aber ich es funktioniert nicht und ich kann keine Arbeitsbeispiele finden, um es zu vergleichen. Dank


Danke für das Feedback ich in der Lage gewesen, auf meine benutzerdefinierten Felder mit dem eventRender hinzufügen. So werden jetzt nicht nur Körper und Beschreibung weitergegeben.

Mein Hauptproblem besteht jetzt darin, die Datumswerte an die Datenbank zu übergeben, da diese nicht gespeichert werden. Kennt jemand irgendwelche Beispiele, wo dies verwendet wird? Ich würde es wirklich sehr schätzen.

+0

Sind Sie auf jeden Fall calEvent.distributor vom Server im JSON-Objekt zu bekommen? Bitte posten Sie "json-events.php", damit wir das Problem aufspüren können – MrBliz

Antwort

8

Sie können Ihre eigenen nicht standardmäßigen Felder in jedes Ereignisobjekt einfügen. FullCalendar wird geändert oder gelöscht werden diese Felder nicht. Dieses Beispiel hilft Ihnen eventRender

und sehen Event Object

6

Hier ist, wie ich eventRender verwendet, um jedes Ereignis einige Kategorien hinzuzufügen. Dann kann ich Ereignisse filtern, basierend auf Kategorienamen

eventRender: function(event, element) { 
     element.attr("categories",event.categoryname) 
    } 

Einfach genial Kalender

+0

vielen Dank! Es hat mir geholfen. – tusar

+0

Ich versuche, den obigen Code zu verwenden, aber ich kann es nicht funktionieren lassen. Wenn das Ereignis gerendert wird, sehe ich nur Titel, Anfang, Ende ... nichts anderes. Ich versuche, einen Kalender basierend auf diesem Tutorial http zu bauen: //blog.shinetech.com/2011/08/05/building-a-shared-calendar-with-backbone-js-and-fullcalendar-a-step-by-step-tutorial/...it ist schwer zu posten Code in diesem Kommentarabschnitt. Jede Hilfe würde geschätzt werden. –

+0

in Chrome Dev Tools Konsole ... Kategorie wird als undefiniert angezeigt –

-2

Einige Attribute hier:

{ 
title: 'Birthday Party', 
start: new Date(y, m, d + 1, 19, 0), 
end: new Date(y, m, d + 1, 22, 30), 
allDay: false, 
backgroundColor: "#00a65a", //Success (green) 
borderColor: "#00a65a" //Success (green) 
},