2012-03-21 55 views
14

Estoy tratando de usar el calendario completo para cargar eventos desde una fuente json. El json proviene de una URL como un feed, "mysite.com/getEvents" (que devuelve un objeto de evento json). En este momento se devuelve un objetoJquery Calendario completo json sintaxis de origen de evento

{"allDay":false,"end":1325577600,"start":1325577600} 

Probé

$('#calendar').fullCalendar({ 
    events: 'mysite.com/getEvents' 
}); 

pero no pasa nada. Sé que a mi json le falta el título y la identificación. Entonces tenemos 2 preguntas

  1. ¿Cuál es la forma correcta para obtener los eventos desde una URL JSON
  2. ¿Cómo hago para generar un identificador para cada evento creado?

Respuesta

15

Debería intentar formar el JSON para que tenga todos los campos requeridos. Por ejemplo, en mi proyecto la siguiente es suficiente:

  • Identificación
  • título
  • inicio
  • final
  • AllDay

creo que la ID única tiene que ser único para esa instancia de la fuente JSON, por lo que podría tener un contador incrementándose en la secuencia de comandos del lado del servidor que genera el JSON.

Ejemplo salida del script JSON:

[ 
    "0", 
    { 
     "allDay": "", 
     "title": "Test event", 
     "id": "821", 
     "end": "2011-06-06 14:00:00", 
     "start": "2011-06-06 06:00:00" 
    }, 
    "1", 
    { 
     "allDay": "", 
     "title": "Test event 2", 
     "id": "822", 
     "end": "2011-06-10 21:00:00", 
     "start": "2011-06-10 16:00:00" 
    } 
] 
+0

Gracias. Intenté eso pero no funcionó. ¿Cuál es la sintaxis correcta? ¿Cómo probaría solo un objeto json sin usar una URL? Intento aprender la sintaxis que funciona, entonces, ¿cómo sería un objeto json hipotético dentro del contexto de la llamada jquery de calendario completo? – EKet

+0

He editado mi respuesta para proporcionar un resultado de muestra de su secuencia de comandos –

+0

gracias, tuve la sintaxis incorrecta y esto fue perfecto. Eres el hombre. – EKet

16

Cuando uso la sintaxis en la respuesta aceptada, tengo cuatro eventos en el calendario, no dos. Los dos extra tienen el extraño título "12:44". Por una corazonada, me quita las líneas de "0" y "1" y ahora funciona perfectamente:

[ 
    { 
    "title": "Ceramics", 
    "id": "821", 
    "start": "2014-11-13 09:00:00", 
    "end": "2014-11-13 10:30:00" 
    }, 
    { 
    "title": "Zippy", 
    "id": "822", 
    "start": "2014-11-13 10:00:00", 
    "end": "2014-11-13 11:30:00" 
    } 
] 
+2

La respuesta aceptada no funciona. Pero funciona. –

+0

La respuesta aceptada es información JSON válida, pero el uso de 'events' no funciona. Tal vez funcionaría con 'eventSources'. La solución formateada anterior funciona. – HPWD

4

Sé que esto es una entrada antigua pero otros pueden estar buscando esto ...

Usted necesita tener corchetes alrededor de su respuesta json, parece estar esperando una matriz de objetos:

[ 
    { 
     "title":"foo1", 
     "id":"123", 
     "start":"2016-02-12T10:30:00", 
     "end":"2016-02-12T12:30:00" 
    }, 

    { 
     "title":"foo2", 
     "id":"456", 
     "start":"2016-02-14T10:30:00", 
     "end":"2016-02-14T12:30:00" 
    } 
] 
Cuestiones relacionadas