javascript - Kendo UI - 使用可观察 View 模型将模板动态加载到 kendo 窗口

标签 javascript jquery kendo-ui telerik kendo-window

传入 JQuery 问题的 Kendo UI。

我有一个带有剑道模板、剑道窗口和可观察 View 模型的部分 View 。我想要实现的是将模板放在窗口内,然后将其绑定(bind)到 View 模型,如下所示:

            var kendoDialog = kendo.template($("#window-template").html());
            window.center().open();
            window.content(kendoDialog);
            kendo.bind($("#window-container"), viewModel);

窗口已正确创建,模型已正确填充,但在绑定(bind)发生之前,此行:

            window.content(kendoDialog);

未定义抛出描述。

在模板中它只是:

            <div class="col-sm-10">
                #: description #
            </div>

我如何实现我想要做的事情?

最佳答案

我准备了一个道场给你看问题:

https://dojo.telerik.com/OsANOcox

问题是,当您加载模板时,它期望传递某种形式的模型,而当前您并没有那么有效地绑定(bind)一个空模型。

所以在你的代码中改变:

window.content(kendoDialog);

window.content(kendoDialog(viewModel));

将数据加载到模板中。

但是,如果您希望通过 MVVM 绑定(bind)它,就像您当前所希望的那样,那么您需要更改模板,使其具有绑定(bind)感知,来源:

 <div class="col-sm-10">  
    #= data.description #
 </div>

 <div class="col-sm-10">
   <span data-bind="html:description"></span>
 </div>

希望这有帮助。

关于javascript - Kendo UI - 使用可观察 View 模型将模板动态加载到 kendo 窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49689300/

相关文章:

javascript - 识别 jquery 中一组相似元素中的哪个元素被单击

JavaScript:多时区时钟

Jquery加载然后编辑加载的内容

jquery - 使用 jquery 将表单插入页面?

javascript - 删除 phpgrid 行后更改文本框值

javascript - 从 forEach 循环中的第二项开始

javascript - 如何使用 JSON 创建链接,单击后会显示在单独的 <div> 中?

jquery - Kendo UI Grid 单击下拉菜单激活

javascript - 剑道上传中按id删除文件

twitter-bootstrap - Kendo UI Bootstrap 主题无法与 Bootstrap 3.1.0 一起使用