【问题标题】:How to populate Kendo Scheduler with events having a specific duration/time?如何使用具有特定持续时间/时间的事件填充 Kendo Scheduler?
【发布时间】:2015-09-16 10:02:55
【问题描述】:

我想在我的 Kendo Scheduler 小部件上执行类似的操作:

我双击调度程序,选择开始日和结束日。然后,当我选择事件“x”或事件“y”时(没关系),我希望弹出窗口用一个事件的特定时间填充我的调度程序。我的意思是,就像我在数据库中为我的所有事件创建不同的颜色一样。

例如,我有一个名为“晨练”的活动,该活动总是从 08 点到 16 点。因此,每次我在弹出窗口中选择该事件时,我都不想浪费时间总是选择从 08h 到 16h 的时间。我已经知道这样的事件总是在那个时间,所以我想避免自己选择时间。因此,不需要数据时间选择器。

基本上,我会选择我想要的事件,一旦我点击保存,水平条将从 08h 到 16h 被绘制到调度程序中,而无需我“告诉”任何事情。我会在我的数据库中指定这些事件的时间,就像我为它们指定颜色一样。

我可以解释我想要的选项的另一种方式是:

我想在同一天为我挑选两个活动。我想双击我的弹窗,同时选择“早训”(08h到16h)和“午训”(16h到00h)。当我单击保存时,调度程序将填充两个不同的水平条,它们按时间分隔,而不是彼此上方。

请随时问我任何问题,让我更深入地了解我的疑问。

【问题讨论】:

  • 您可以通过多种方式做到这一点,以下是其中两个的理论:1. 您可以使用 javascript 自动设置时间:使用 onChange 事件dropDownLists,检查选择了哪个选项并根据选择定义小时数。 2.如果你想使用数据库触发器,特定表的before insert,检查事件类型id(或代码或其他)并相应地设置时间字段

标签: javascript kendo-ui kendo-scheduler


【解决方案1】:

使用我在评论中提到的触发方法,它会是这样的:

CREATE TRIGGER some_trigger ON tbl_EventType
FOR INSERT AS
SELECT @idEventType=(idEventType) FROM INSERTED
SELECT @startTime=(startTime) FROM tbl_EventType where idEventType = @idEventType
SELECT @endTime=(endTime) FROM tbl_EventType where idEventType = @idEventType

INSERT INTO 
tbl_Event
(idEventType, startTime, endTime)
VALUES
(
@idEventType, @startTime, @endTime
)

在插入语句中,您必须添加表中的其余字段。可以从INSERTED 表中获取它们的值。

【讨论】:

    猜你喜欢
    • 2015-05-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-15
    • 2021-08-23
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    相关资源
    最近更新 更多