2011-04-07 2 views
1

aspx 페이지에서 이벤트를 동적으로 가져 와서 JQuery FullCalendar를 구현했습니다. 그러나 달력에 이벤트가 표시되지 않습니다. 하지만 수동으로 이벤트 응답에 페이지 응답을 추가하면 정상적으로 작동합니다. 아무도 문제가되는 것을 도와 줄 수 있습니까? 여기 내 코드가있다.JQuery FullCalendar가 aspx 페이지의 이벤트를 표시하지 않습니다.

$('#calendar').fullCalendar({ 
     theme: true, 
     header: { 
      left: 'prev,next today', 
      center: 'title', 
      right: 'month,agendaWeek,agendaDay' 
     }, 
     //events: "GetCalendarEvents.aspx?id=2612&role=supervisor" --->not working 
// works fine if i add the above page's response to the events manually as shown below 
     events: [ 
       { 
        "id": 1, 
        "title": "Family Sick - Unsubstantiated", 
        "start": "2011-03-21 08:00:00", 
        "end": "2011-03-22 17:00:00", 
        "editable": false, 
        "url": "LeaveRequestForm.aspx?id=1" 
       }, 
       { 
        "id": 2, 
        "title": "Family Medical Leave", 
        "start": "2011-04-25 13:00:00", 
        "end": "2011-04-25 17:00:00", 
        "editable": false, 
        "url": "LeaveRequestForm.aspx?id=1" 
       }, 
       { 
        "id": 3, 
        "title": "Vacation", 
        "start": "2011-04-14 08:00:00", 
        "end": "2011-04-16 17:00:00", 
        "editable": false, 
        "url": "LeaveRequestForm.aspx?id=2" 
       }, 
       { 
        "id": 4, 
        "title": "Training", 
        "start": "2011-04-12 08:00:00", 
        "end": "2011-04-12 17:00:00", 
        "editable": false, 
        "url": "LeaveRequestForm.aspx?id=2" 
       } 

      ] 

    }); 

GetCalendarEvents.aspx의 코드 숨김은 :

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 

    Dim dbAPD As DBAPDData = New DBAPDData() 
    Dim util As Utils = New Utils() 
    Dim approverID As String = "" 
    Dim approverRole As String = "" 

    If (Request.QueryString("id") IsNot Nothing) Then 
     approverID = Request.QueryString("id").Trim() 
    End If 

    If (Request.QueryString("role") IsNot Nothing) Then 
     approverRole = Request.QueryString("role").Trim() 
    End If 

    Dim eventsList As List(Of CalendarEvent) = New List(Of CalendarEvent)() 

    Dim ds As DataSet = dbAPD.GetLeaveRequestDetailsByApprover(approverID, approverRole, 2) 'LeaveStatusCode = 2 --> Approved 
    If (ds.Tables(0).Rows.Count > 0) Then 

     For Each dr As DataRow In ds.Tables(0).Rows 

      Dim calEvent As CalendarEvent = New CalendarEvent() 

      calEvent.id = If(IsDBNull(dr("LeaveRequestDetailsID")), 0, Convert.ToInt32(dr("LeaveRequestDetailsID"))) 
      calEvent.title = If(IsDBNull(dr("LeaveCode")), "", dbAPD.GetLeaveCodeDescription(Convert.ToString(dr("LeaveCode")))) 
      calEvent.url = If(IsDBNull(dr("LeaveRequestID")), "", "LeaveRequestForm.aspx?id=" + Convert.ToString(dr("LeaveRequestID"))) 


      calEvent.start = If(IsDBNull(dr("FromDate")), "", String.Format("{0:yyyy-MM-dd HH:mm:ss}", Convert.ToDateTime(dr("FromDate")))) 
      calEvent.end = If(IsDBNull(dr("ToDate")), "", String.Format("{0:yyyy-MM-dd HH:mm:ss}", Convert.ToDateTime(dr("ToDate")))) 

      eventsList.Add(calEvent) 

     Next 

    End If 

    ' Serialize the return value . 
    Dim js As New System.Web.Script.Serialization.JavaScriptSerializer 
    Dim strEvents As String = js.Serialize(eventsList) 

    Response.Clear() 
    Response.Write(strEvents) 

End Sub 
+0

당신이 "GetCalendarEvents.aspx? ID가 = 2612 & 역할 = 감독"당신이 어떤 응답을 할 수있는 검색하면? 구문 문제 일 수 있습니까? – dkarzon

답변

0

나는이 문제를 알아 냈어. "GetCalendarEvents.aspx"코드 숨김 파일에서 Response.Write() 뒤에 다음 행을 추가하면 정상적으로 작동합니다.

Response.End() 

감사

관련 문제