调度程序概述
Scheduler显示一组事件、约会或任务。
它支持在不同的视图中显示预定的事件——一天、整个星期或几个月,或者作为需要完成的任务列表。
从R1 2017版本开始,当用户编辑一个系列时,异常不再被自动删除。对特定事件所做的更改将在系列编辑期间持久保存。如果一个系列包含异常,则Scheduler将呈现一个重置系列控件中的按钮编辑系列的对话框,该对话框允许用户通过删除现有的异常来重置系列。
剑道UI 2016年第二季度(2016.2.504)发布:
调度程序是jQuery的剑道UI,一个具有 110+ 组件的专业级UI库,用于构建现代和功能丰富的 应用程序。想要试用它,请注册一个30天的免费试用。
- Scheduler替换分号(
;
)作为分隔符类型,用于包含逗号的递归异常(,
). - 调度器不再向递归异常添加尾随分隔符。
这种变化是由RFC 5545规范。注意,之前演示的行为是不正确的。
初始化调度器
- 包括剑道UI JavaScript和CSS文件。有关更多信息,请参阅关于开始使用剑道UI的文章.
- 要进行初始化,Scheduler需要将其绑定到
kendo.data.SchedulerDataSource
特殊类型的剑道UI数据源。SchedulerDataSource
包含自定义的实例kendo.data.SchedulerEvent
Kendo UI模型,它表示调度程序的事件数据项。
类的所有字段可用于编辑和处理重复事件
kendo.data.SchedulerEvent
在schema.model
数据源的。
基本配置
的kendo.data.SchedulerEvent
对象提供以下字段:
描述字符串
- Scheduler事件的文本描述。结束日期
-事件结束的日期。身份证号码
- Scheduler事件的唯一标识符。事件的id
没有设定的被认为是新的。isAllDay布尔
-指示事件是否持续一整天。recurrenceException字符串
-递归异常。recurrenceId字符串| |对象数量
——id
递归父元素的。如果设置,则当前事件是一个递归异常。recurrenceRule字符串
-递归规则,描述事件的重复模式。遵循rfc5545规范。开始日期
-活动开始的日期。标题字符串
-在Scheduler视图中显示的事件标题。
当您使用
schema.model.fields
,列出所有kendo.data.SchedulerEvent
字段。设置表示的字段id
事件通过schema.model.id
.
如果远程服务以不同的格式存储和返回Scheduler任务,请使用schema.model.fields
而且schema.model.id
用于描述它们的数据源选项。
下面的示例演示如何将远程服务字段映射到客户端Scheduler事件字段。
schema: {model: {id: "taskId", //(必选)事件的id为"taskId"字段。{//描述Scheduler事件字段并将它们映射到远程服务返回的字段。'taskId'服务器端字段映射到'taskId'客户端字段。'title'服务器端字段被映射到'title'客户端字段。defaultValue: "No title", validation: {required: true}}, start: {type: "date", from: " start " // 'start'服务器端字段被映射到'start'客户端字段。}, end: {type: "date", from: " end " // 'end'服务器端字段映射到'end'客户端字段。},描述:{来自:" description "}, recurrenceId:{来自:" recurrencerid "}, recurrenceRule:{来自:" recurrenceRule "}, recurrenceException:{来自:" recurrenceException "}, isAllDay:{类型:"boolean",来自:" isAllDay "}}}}
功能和特性
方法、字段和事件
< div id = "调度器" > < / div > <脚本> $(" #调度器")。kendoScheduler({ date: new Date("2013/6/6"), dataSource: [ { id: 1, start: new Date("2013/6/6 08:00 AM"), end: new Date("2013/6/6 09:00 AM"), title: "Breakfast" } ] }); // Get a reference to the kendo.ui.Scheduler instance. var scheduler = $("#scheduler").data("kendoScheduler"); scheduler.view("week"); // Go to the Week view.
调度程序还支持一组事件你可以订阅。要处理事件,可以指定将在小部件初始化期间处理事件的JavaScript函数,或者使用绑定
小部件初始化后的方法。
事件处理程序是在触发事件时调用的JavaScript函数。事件处理程序的参数是一个JavaScript对象,其中包含特定于事件的数据。要获取对触发事件的小部件的引用,请使用发送方
事件参数的字段。控件提供的事件处理程序的函数上下文这
关键字设置为触发事件的小部件的实例。
下面的示例演示如何在小部件初始化期间订阅Scheduler事件。
< div id = "调度器" > < / div > <脚本> $(" #调度器")。kendoScheduler({ date: new Date("2013/6/6"), dataSource: [ { id: 1, start: new Date("2013/6/6 08:00 AM"), end: new Date("2013/6/6 09:00 AM"), title: "Breakfast" } ], edit: function(e) { console.log("edit"); } });
方法订阅Scheduler事件绑定
方法。
引用现有实例
要引用现有的Scheduler实例,请使用jQuery.data ()
然后通过kendoScheduler
作为一个论点。一旦建立了引用,就使用调度程序API控制它的行为。
< div id = "调度器" > < / div > <脚本> $(" #调度器")。kendoScheduler({ date: new Date("2013/6/6"), dataSource: [ { id: 1, start: new Date("2013/6/6 08:00 AM"), end: new Date("2013/6/6 09:00 AM"), title: "Breakfast" } ] }); // Get a reference to the kendo.ui.Scheduler instance. var scheduler = $("#scheduler").data("kendoScheduler");