1

当我使用 ajax 从我的 JSON 提要中获取数据时,我的 fullCalendar 对象中的事件没有显示。我相信 JSON 格式是正确的,因为 JSON.aspx 的输出是:

[{"id":1,"title":"TESTTITLE","info":"INFOINFOINFO","start":"2012-08-20T12:00:00","end":"2012-08-20T12 :00:00","用户":1}]

我使用了 Firebug,似乎没有正确获取 JSON 提要?

当我直接在事件中添加上部 JSON-feed 时,它会正确显示。

(编辑)JSON 响应现在正在工作,尽管事件仍未显示在完整日历中。

JSON.aspx

public partial class JSON : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
    // Get events from db and add to list.
    DataClassesDataContext db = new DataClassesDataContext();
    List<calevent> eventList = db.calevents.ToList();

    // Select events and return datetime as sortable XML Schema style.
    var events = from ev in eventList
                 select new
                 {
                     id = ev.event_id,
                     title = ev.title,
                     info = ev.description,
                     start = ev.event_start.ToString("s"),
                     end = ev.event_end.ToString("s"),
                     user = ev.user_id
                 };

    // Serialize to JSON string.
    JavaScriptSerializer jss = new JavaScriptSerializer();
    String json = jss.Serialize(events);

    Response.Write(json);
    Response.End();
   }
}

还有我的 Site.master

<link href="~/Styles/Site.css" rel="stylesheet" type="text/css" />    
<link href='fullcalendar/fullcalendar.css' rel='stylesheet' type='text/css' />
<script src='jquery/jquery-1.7.1.min.js' type='text/javascript'></script>
<script src='fullcalendar/fullcalendar.js' type='text/javascript' ></script>
<script type="text/javascript">
     $(document).ready(function () {
         $('#fullcal').fullCalendar({

            eventClick: function() {
                alert('a day has been clicked!');
            },
          events: 'JSON.aspx' 
         })
     });
</script>

几天来我一直在扫描相关问题,但似乎没有一个能解决我的问题......

4

1 回答 1

2

为什么你的电话这么复杂?现在试试这个:

$('#fullcal').fullCalendar({     
    events: 'JSON.aspx',
    eventClick: function (calEvent, jsEvent, view) {
        alert('a day has been clicked!');
    }
}); 
于 2012-09-09T14:12:02.697 回答