Kendo UI,如何在使用MVVM时从DOM元素获取widget对象?

时间:2013-08-27 20:47:08

标签: jquery mvvm kendo-ui kendo-treeview kendo-mvvm

我已按照此页面中的说明在kendo treeView中制作了MVVMhttp://demos.kendoui.com/web/treeview/mvvm.html

现在我需要绑定一些events并使用一些APIs

我想我需要拥有treeview对象,我需要以某种方式使用相应的DOM元素找到它。怎么可能实现?

1 个答案:

答案 0 :(得分:4)

您可以使用MVVM绑定绑定标记中的事件。该示例显示了如何完成此操作。

data-bind="visible: isVisible, source: files, events: { select: onSelect }

示例中的代码显示了MVVM事件绑定结构。这是使用KendoUI MVVM绑定事件的最简单方法。通过上面的代码,他们还给出了一个处理事件的onSelect依赖方法的例子。您可以通过用逗号分隔它们来添加更多事件绑定。

events: { select: onSelect, click: onClick }

然后,您需要将一个名为onClick的方法添加到您的viewmodel代码

onClick: function(e) {
//Do Something
}

如果您想获取DOM元素并从Javascript代码调用窗口小部件,您可以使用:

var treeViewWidget = $("#treeview").data("kendoTreeView");

确保在将viewmodel绑定到页面后执行此操作。您还需要修改示例中的div以包含Id属性,以便在jQuery选择器中方便地进行选择。上面的代码要求您将treeview div定义为:

<div id="treeview" class="files"
data-role="treeview"
data-drag-and-drop="true"
data-text-field="name"
data-spritecssclass-field="type"
data-bind="visible: isVisible,
source: files,
events: { select: onSelect }"></div>