Kendo UI Scheduler禁用一天的多个时间跨度/范围

时间:2015-02-15 10:24:00

标签: configuration kendo-ui kendo-scheduler

我有一个调度程序,供创建者和消费者使用。创建者将定义消费者可以在其中进行交互的特定时间范围(创建事件)。在当天的其他时间范围内,消费者无法互动并将被禁用。我确实设法创建了没有任何问题的事件,但显示可用的交互插槽导致我出现问题。

Example:假设,创建者将允许的时间段定义为下午4:00到晚上8:00(我成功地可以将其保存在数据库中并相应地显示)。 因此,在消费者视图中,应该从上午12:00到下午4:00以及从晚上8:00到凌晨12:00禁用调度程序,并在下午4:00到8:00启用调度程序下午。这意味着消费者可以在下午4:00到晚上8:00之间创建多个活动。

我需要适当的调度程序选项,我可以将其用作数据源。

1 个答案:

答案 0 :(得分:0)

您可以使用save event来阻止创建事件,只显示允许的范围:

var startLimit = new Date();
startLimit.setHours(4);
startLimit.setMinutes(0);
startLimit.setSeconds(0);

var endLimit = new Date();
endLimit.setHours(8);
endLimit.setMinutes(0);
endLimit.setSeconds(0);

$("#scheduler").kendoScheduler({
    date: new Date(),
    views: [{
        type: "day",
        startTime: startLimit,
        endTime: endLimit
    }],
    dataSource: [],
    save: function (e) {
        if (e.event.start < startLimit || e.event.end > endLimit) {
            console.log("disallow"); // show validation error or w/e
            e.preventDefault();
        }
    }
});