2012-04-26 6 views
11

Ho un fullcalendar funzionante sul mio sito, tuttavia, la tabella del calendario attuale non viene visualizzata fino a quando non si cambia il mese/anno o si seleziona "oggi".jQuery FullCalendar non rendering

Se guardo la fonte visualizzata, vedo che il div intorno al tavolo è vuoto finché non premo un pulsante.

<div style="position: absolute; -moz-user-select: none;" class="fc-view fc-view-month fc-grid" unselectable="on"></div> 

Qualcuno ha idea del perché questo sta accadendo?

risposta

32

Avete questo calendario in una scheda o una finestra di dialogo, che è nascosto alla vista in un primo momento?

In tal caso, è necessario rendere esplicitamente il fullCalendar quando tale controllo è attivo.

Supponiamo che stiate usando il widget Schede UI jQuery e abbiate il FullCalendar nella seconda scheda (che è nascosta alla vista finché non viene selezionata la seconda scheda). In questo caso, puoi fare qualcosa del genere:

$('#tabs').tabs({ 
    show: function(event, ui) { 
     $('#calendar').fullCalendar('render'); 
    } 
}); 

Questo assicura che il calendario sia visualizzato quando viene visualizzata la scheda. Spero che questo ti aiuti!

+0

Bingo, ha funzionato. Non ce l'ho nelle schede dell'interfaccia utente, ma è nelle schede personalizzate che ho creato. Stavo cercando di renderlo ma immagino che non stavo mettendo quel codice nel posto giusto. Grazie! – ksumarine

+0

È grandioso! Ti dispiacerebbe accettare questa come tua risposta? – ganeshk

+3

@Corey non dimenticare di accettare una risposta quando risolve il tuo problema. Altrimenti, le persone non ti risponderanno più ... –