Cuando configuro fullCalendar y establezco la devolución de llamada de la función eventRender, quiero establecer el color del evento dependiendo de si LeadId es nulo o no. Pero esto no parece funcionar aunque la documentación lo diga: http://arshaw.com/fullcalendar/docs/event_data/Event_Object/#color-optionsFullcalendar no da color cuando se usa eventRender
¿Hay alguna forma de configurar el color del evento para que cambie en función de los datos?
calendar = $('#dayview').fullCalendar({
....
timeFormat: 'HH:mm',
columnFormat: {
agendaDay: 'dddd dd/MM/yyyy'
},
eventClick: function (calEvent, jsEvent, view) {
var leadUrl = "/Leads/" + calEvent.LeadId;
window.location = leadUrl;
},
eventRender: function (event, element) {
if (event.LeadId != null) {
event.eventColor = "#B22222";
event.eventBackColor = "#B22222";
}
},
ACTUALIZACIÓN:
Esto es realmente extraño. El evento tiene todas mis propiedades devueltas para el evento fuera del servidor. elemento es solo el elemento DOM para el evento. Cuando arrastro/muevo el evento a otro lugar en el calendario, el evento se vuelve rojo, y si inspecciono el objeto del evento ahora tiene el color configurado en Rojo. Entonces, la pregunta es por qué no se está aplicando en el 1er render, pero en renders subsecuentes (es decir, después del movimiento) se aplica el color?
Gracias por esto, sí, la clase .fc-event-skin es la clave. De la misma manera: var block = $ (element) .find (". Fc-event-skin"); Luego solo agrega la clase. Ni siquiera necesité el atributo! Css importante. – jaffa