2010-09-23 4 views
2

J'ai une page qui renvoie des informations JSON à partir d'un cfc. Le JSON est un tableau de structures qui ressemble à ceci:Impossible de rendre les événements sur FullCalendar à partir du flux JSON

[ 
    { 
    "allday": true, 
    "title": "event1", 
    "userid": 1, 
    "end": "", 
    "classname": "", 
    "editable": true, 
    "start": "2010-09-01", 
    "id": 1, 
    "url": "" 
    }, 
    { 
    "allday": true, 
    "title": "event2", 
    "userid": 1, 
    "end": "", 
    "classname": "", 
    "editable": true, 
    "start": "2010-09-10", 
    "id": 2, 
    "url": "" 
    } 
] 

Quand j'utilise:

$(document).ready(function() { 
    //Create JQuery connection to obj 
    $('#event').hide(); 
    //Make event bubble draggable 
    $('#event').draggable(); 

    $('#evBubbleClose').click(cleanEventBubble); 
    // page is now ready, initialize the calendar... 
    $('#calendar').fullCalendar({ 
     // put your options and callbacks here 
     dayClick: function(date, allDay, jsEvent, view) { 
      createEvent(date, allDay, jsEvent, view, this); 
     }, 
     events: 'http://xxxxx/cfc/FullCalendarEvents.cfc?method=getEvents', 
     theme: true, 
     header: { 
      left: 'prev,next today', 
      center: 'title', 
      right: 'month,agendaWeek,agendaDay' 
     }, 
     editable: true 
    }); 
}); 

Les événements ne rendent pas. Cependant, si je copie et colle le JSON dans l'événement: JSON Array ici, il montre les événements. Qu'est-ce que je fais de mal que les événements ne rendent pas d'un flux?

+0

Avez-vous défini l'affichage par défaut en vue mensuelle? Votre calendrier n'a peut-être pas les dates que vous avez indiquées. Je devine juste, parce que le code me semble juste. – Francisco

+0

Le JSON est-il sur le même serveur? événements: 'cfc/FullCalendarEvents.cfc? method = getEvents', – orolo

Répondre

1

Lorsque vous spécifiez un nom de domaine complet pour votre URL d'événement, s'agit-il du même nom de domaine complet que la page appelante? Si jQuery est utilisé pour appeler une fonction AJAX sur un domaine, un sous-domaine ou un protocole différent (comme appeler http depuis https), vous devez utiliser un wrapper JSONP.

Détails about Same Origin Policy et jQuery annd JSON.

+0

C'était en fait une erreur humaine stupide. ColdFusion renvoyait un contenu indésirable supplémentaire avec le contenu JSON que j'avais pour le désactiver. Il fonctionne maintenant – kevin

Questions connexes