0

我正在使用 Kendo UI 来显示调度程序控制。

我也有日期选择器

这是包含日历的 DIV。

        <div id="calendar">

         </div>

我从脚本加载日历如下

     <script>
          $(document).ready(function () {


              $("#calendar").kendoCalendar();
          });
   </script>

我有如下调度程序

                 <td>
                @(Html.Kendo().Scheduler<SchedulingSystemUI.Models.TaskViewModel>()
        .Name("scheduler")
        .Date(new DateTime(2014, 8, 16))
        .StartTime(new DateTime(2014, 8, 16, 7, 00, 00))
        .Height(600)
        .Views(views =>
        {
            views.DayView();
            views.WeekView(weekView => weekView.Selected(true));
            views.MonthView();
            views.AgendaView();
        })
        .Timezone("Etc/UTC")
        .DataSource(d => d
            .Model(m =>
            {
                m.Id(f => f.TaskID);
                m.Field(f => f.OwnerID).DefaultValue(1);
                //Set the recurrence ID field from the model:
                m.RecurrenceId(f => f.RecurrenceID);
            })
                    .Read("Tasks_Read", "Dashboard")
                                .Create("Tasks_Create", "Dashboard")
                                    .Destroy("Tasks_Destroy", "Dashboard")
                                    .Update("Tasks_Update", "Dashboard")
        )
                )


            </td>

现在单击日期选择器,我想将调度程序视图更改为 DAY。我该怎么做?

4

1 回答 1

0

使用调度程序的视图方法将视图更改为日视图。

var scheduler = $("#scheduler").data("kendoScheduler");
scheduler.view("month");

棘手的部分是何时触发此更改。这可能是日期选择器获得焦点的时候。这里的挑战是 API 没有焦点事件,但如果支持,您必须捕获底层元素之一的焦点。我知道它隐藏了一些小部件的实际输入元素,所以我不确定焦点事件将如何工作。

此外,您可以触发它在打开日历时触发,这是受支持的。

于 2014-08-20T15:16:57.980 回答