Jquery完整日历json事件源语法

EKe*_*Ket 15 jquery fullcalendar

我正在尝试使用完整日历来加载来自json源的事件.json来自像feed这样的URL,"mysite.com/getEvents"(返回一个json事件对象).现在它返回一个对象

{"allDay":false,"end":1325577600,"start":1325577600}
Run Code Online (Sandbox Code Playgroud)

我试过了

$('#calendar').fullCalendar({
    events: 'mysite.com/getEvents'
});
Run Code Online (Sandbox Code Playgroud)

但没有任何反应.我知道我的json缺少标题和id.所以我们有2个问题.

  1. 从json url获取事件的正确方法是什么
  2. 如何为每个创建的事件生成id?

sha*_*ker 17

当我在接受的答案中使用语法时,我在日历上得到四个事件,而不是两个.这两个额外的名字叫做"12:44".在预感中,我删除了"0"和"1"行,现在它完美地工作:

[
  {
    "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"
  }
]
Run Code Online (Sandbox Code Playgroud)

  • 接受的答案不起作用.但它的确有效. (2认同)

Mat*_*aly 16

您应该尝试形成JSON,以便它具有所有必需的字段.例如,在我的项目中,以下内容就足够了:

  • ID
  • 标题
  • 开始
  • 结束
  • 一整天

我认为ID只需要对于JSON提要的实例是唯一的,因此您可以在生成JSON的服务器端脚本中使用计数器递增.

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"
    }
]
Run Code Online (Sandbox Code Playgroud)


小智 5

我知道这是旧帖子,但其他人可能正在寻找...

您需要在json响应周围放上括号,似乎正在等待对象数组:

[
    {
        "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"
    }
]
Run Code Online (Sandbox Code Playgroud)