2013-07-24 51 views
0

我在我的網站上有一個syncfusion計劃程序,我需要跟蹤用戶何時添加新的約會。 跟蹤必須在jQuery中。所以當創建syncfusion約會並保存約會時,我會將其帶到我的控制器。但我不能跟蹤它有沒有人知道的方式來呼籲任命的jQuery保存保存跟蹤的Syncfusion計劃

 @using Syncfusion.Mvc.Shared 
    @using Syncfusion.Mvc.Schedule 
@using Combres.Mvc 
@{ 
ViewBag.Title = "Calendar"; 
Layout = "~/Views/Shared/_LayoutSingleColumn.cshtml"; 
} 
@section scripts { 
@Html.CombresLink("syncfusionJs") 
@{Html.Syncfusion().ScriptManager().DisableScripts(true).Render();} 
<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#User').change(function() { 
      location.href = '/Team/Calendar/Index/' + $(this).val(); 
     }); 
    }); 
</script> 
<script type ="text/javascript"> 
    mixpanel.track("View Manager | Calendar"); 
</script> 
} 
@section styles { 
@Html.CombresLink("syncfusionCss") 
<style type="text/css"> 
    .AppointmentTextBox{ width: 75px; } 
    #RecurrenceWindowschedule1 {height: 375px !important;} 
</style> 
} 
<label>User: </label>@Html.DropDownList("User", OpenRoad.Web.Helpers.DropDownLists.GetOptionValues("CalendarUsers", ViewData["UserId"].ToString(), true))<br /> 
@{Html.Syncfusion().Schedule("schedule1", "ScheduleModel") 
.DataSource((System.Collections.IEnumerable)ViewData["data"]) 
.Resources((List<ScheduleResource>)ViewData["resources"]) 
.AllowEdit(true) 
.AllowAddNew(true) 
.AllowDelete(true) 
.AllowInline(true) 
.AllowDragAndDrop(true) 
.AllowMultipleResource(true) 
.AllowResize(true) 
.AllowPriority(true) 
.AllowRecurrence(true) 
.AllowReminder(false) 
//.ShowResourceHeader(true) 
.ShowNavigationPane(true) 
.Width(1050) 
.Height(640) 
.HighlightBusinessHours(true) 
//.ShowToolTip(true) 
//.ShowImport(true) 
//.ShowExport(true) 
.Skins(ScheduleSkins.Marble) 
.CurrentView(ScheduleViewMode.Month) 
.CustomCss("schedule_Custom")  
.BindList(columns => 
{ 
    columns.IdField("AppointmentId"); 
    columns.SubjectField("Subject"); 
    columns.LocationField("Location"); 
    columns.StartTimeField("StartTimeUtc"); 
    columns.EndTimeField("EndTimeUtc"); 
    columns.DescriptionField("Description"); 
    columns.OwnerField("UserId"); 
    columns.PriorityField("Priority"); 
    columns.ReminderField("Reminder"); 
    columns.RecurrenceField("Recurrence"); 
    columns.RecurrenceTypeField("Frequency"); 
    columns.RecurrenceTypeCountField("Interval"); 
    columns.RecurrenceStartField("RecurrenceStart"); 
    columns.RecurrenceEndField("RecurrenceEnd"); 
}) 
.Render(); 
} 

回答

0

在Syncfusion約會創建點,ajaxBeginajaxSuccess事件應該被調用。因此,我們可以使用下面的事件跟蹤創建:

嘗試這樣的:

@{Html.Syncfusion().Schedule("schedule1", "ScheduleModel") 
... 
      .ClientSideOnActionBegin("ajaxBegin") 
      .ClientSideOnActionSuccess("ajaxSuccess") 
... 
.Render(); 
} 

腳本:

<script type="text/javascript"> 
    // sender => Schedule control's object 
    // args => arguments of Ajax request details 
    function ajaxBegin(sender, args) { 
     var action=args._data.CurrentAction; // we get current action as "Save" on adding new appointment 
    } 

    // sender => Schedule control's object 
    // args => arguments of Ajax request success details 
    function ajaxSuccess(sender, args) { 
     ... 
    } 
</script>