繁体   English   中英

重用kendo-ui模板

[英]Reusing kendo-ui template

第一次渲染模板效果很好。 它按预期显示:

在此处输入图片说明

当向后导航并再次导航到同一屏幕时,将导致以下结果,并丢失列表格式:

在此处输入图片说明

为什么会发生这种情况,如何预防呢?

以下是模板定义:

<div data-role="view" data-layout="app" data-title="Time Card" id="screen1">
</div>
<script type="text/x-kendo-template" id="template1">
    Heading
    <ul data-role="listview" data-style="inset" data-type="group"> 
        <ul data-role="listview">
            Group 1
            # for (var i = 0; i < data.headers.length; i++) { #
                <li><a>#= data.heades[i].Item #</a></li>
            # } #
        </ul>
        <ul data-role="listview">
            Group 2
            <li>hello</li>
            <li>goodbye</li>
        </ul>
    </ul>
</script>

以下是填充模板并导航至模板的代码:

var templateContent = $("#template1").html();
var template = kendo.template(templateContent);
var data = {headers: headers};
$("#screen1").html(template(data));
app.navigate("#screen1");

发生这种情况是因为您要替换不支持的View的HTML。 例如,更改后小部件将不会重新初始化。

$("#screen1").html(template(data)); //html replacement of the View's content is not supported

我的建议是将小部件绑定到数据源,并使用其API方法更改内容。 数据更改后,ListView将自动重新呈现模板。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM