【问题标题】:Kendo UI Gantt - Custom Task Edit TemplateKendo UI Gantt - 自定义任务编辑模板
【发布时间】:2016-02-10 11:39:52
【问题描述】:

我使用此示例为任务创建了自定义模板:

http://docs.telerik.com/kendo-ui/api/javascript/ui/gantt#configuration-editable.template

<script id="editor" type="text/x-kendo-template">
   <h3>Edit meeting</h3>
   <p><label>Title: <input name="title" /></label></p>
   <p><label>Start: <input data-role="datetimepicker" name="start" /></label></p>
   <p><label>End: <input data-role="datetimepicker" name="end" /></label></p>
</script>

现在我需要添加一个“资源 - 分配”按钮,就像本示例中的按钮一样(编辑任务表单): http://demos.telerik.com/kendo-ui/gantt/resources

我需要做什么来创建这个按钮?我找不到这部分甘特图控件的 API 文档。

【问题讨论】:

    标签: kendo-ui telerik gantt-chart kendo-gantt


    【解决方案1】:

    完成此操作需要几个步骤。 首先,在您的剑道模板中添加如下内容:

    <div>
      <label for='resources'>Resources:</label>
      <div class='k-gantt-resources' style='display: none;'>
      </div>
      <div class='k-edit-field' data-container-for='resources'>
        <a class='k-button' href='\\#'>Assign</a>
      </div>
    </div>
    

    接下来,您需要在初始化小部件时将以下两个事件处理程序添加到选项中:

    edit: editHandler,
    save: saveHandler
    

    最后,您需要创建上面提到的两个处理程序。您基本上是在拦截默认功能并自己打开弹出窗口,然后在完成时保存结果(如果已修改)。

    var resoucesdEdited = false;
    
    function editHandler(e)
    {
        var gantt = e.sender;
        resoucesdEdited = false;
    
        if (e.task)
        {
            e.container.on('click', 'div[data-container-for="resources"] > a', function (event)
            {
                event.preventDefault();
                resoucesdEdited = true;
                gantt._createResourceEditor(e.container.find('div.k-gantt-resources'), e.task);
            });
        }
    }
    
    function saveHandler(e)
    {
        if (e.task && resoucesdEdited)
        {
            this._updateAssignments(e.task.get("id"), e.task.get(this.resources.field));
        }
    }
    

    很高兴你问这个问题,因为我也需要知道这件事,而且你说得对,Telerik/Kendo 文档没有提到如何做到这一点!

    【讨论】:

    • 非常感谢!你拯救了我的一天。它无法在网络中找到有关 _createResourceEditor 或 _updateAssignments 函数的任何信息。你是怎么找到他们的?你能推荐一些工具吗?
    • 我翻遍了剑道库文件并找到了一些信息,但老实说,我不得不去 Telerik 支持寻求其他答案。我是 Telerik Devcraft 的付费用户,所以我从他们那里获得技术支持。不确定您使用的是免费版还是付费版,但如果您可以选择,他们的支持非常好,他们总是会在 24 小时内回复您。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-11-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-08
    相关资源
    最近更新 更多