我正在尝试为kendo调度程序定义个人营业时间。 kendo调度程序仅为每个工作日使用单个开始/结束时间。我想特别定义每一天的开始/结束时间(即星期一与星期二的时间不同)。
有人最近在
上提出了这个问题http://www.telerik.com/forums/set-business-hours-for-individual-days
我想知道是否有人扩展了添加类似功能的视图。
我无权访问视图的非缩小版本(kendo.ui.DayView,kendo.ui.WeekView)。基于kendo.scheduler.dayview.min.js文件,我假设我必须扩展DayView,并覆盖_content函数,但是我无法将缩小版本的函数复制到扩展视图中。
我目前正在使用jQuery循环遍历时间段以在数据绑定事件上为此添加css类,但是,如果您在每周视图上并且设置了主要滴答,那么性能可能非常糟糕到5。
循环遍历时隙的代码类似于 http://www.telerik.com/forums/color-code-resource-unavailable-days-hours
dataBound: function (e) {
var scheduler = this;
var view = scheduler.view();
view.table.find("td[role=gridcell]").each(function () {
var element = $(this);
var slot = scheduler.slotByElement(element);
//your custom logic based on the slot object
if (true) {
element.addClass("customClass");
}
})
}
答案 0 :(得分:3)
要明确定义每一天的开始/结束时间,请使用" schedulerInstance.options"物业在"导航" scheduler.e.g。
的方法 navigate: function (e) {
var schedulerInstance = $("#schedulerInterface").data('kendoScheduler');
var options = schedulerInstance.options;
switch (new Date().getDay())
{
case 0:
options.startTime = // Your start time;
options.endTime = //Your end time;
break;
case 1:
options.startTime = // Your start time;
options.endTime = //Your end time;
break;
case 2:
options.startTime = // Your start time;
options.endTime = //Your end time;
break;
case 3:
options.startTime = // Your start time;
options.endTime = //Your end time;
break;
case 4:
options.startTime = // Your start time;
options.endTime = //Your end time;
break;
case 5:
options.startTime = // Your start time;
options.endTime = //Your end time;
break;
case 6:
options.startTime = // Your start time;
options.endTime = //Your end time;
break;
}
}
希望它有所帮助。