1

我试图构建一个ListViewusing KendoUI.

因此,我需要创建一个ClientTemplate.

但我想知道的是,在创建之后ClientTemplate,我如何在其内部使用该模板。

换句话说,我想创建一个Recursive Template如果有意义的话。

这是我到目前为止所拥有的:

<script type="text/x-kendo-tmpl" id="template">
    <div class="submenu-item">
         #:Name#
    </div>
    <div class="submenu-children">
         # foreach (var child in ChildElements ) { #
             // In here I want to reuse this same template.
         #}#
    </div>
</script>

这背后的想法是让我可以创建一个ListView元素及其所有子元素。我会将孩子格式化为稍微加标签。

任何帮助我都会非常感激。

4

1 回答 1

2

您无需在模板中执行#foreach,只需调用

#= kendo.render(kendo.template($("\\#template").html()), data.ChildElements) #

如果最底部的子元素没有 ChildElements 属性,您可能会遇到错误,在这种情况下,只需添加一个

# if(data.ChildElements !== undefined && data.ChildElements.length > 0 ) { #
    #= kendo.render(kendo.template($("\\#template").html()), data.ChildElements) #
# } #

在http://jsbin.com/fagawo/1/edit?html,js,output查看一些工作示例

于 2015-05-19T12:48:32.843 回答