Kendo UI-如何在JavaScript中修改Kendo模板

Jabagchourian之间的区别

我正在尝试在运行时使用JavaScript修改Kendo UI模板。

我的模板包含一个“ 103”(第二行),我想在JavaScript中动态更改它。

<script type="text/x-kendo-tmpl" id="srcBldgTemplate">
     #if(data.BuildingName == '103'){#
        <div  class="item click" data="${BuildingID}">
            <input id=chkSrcBldgMain type="checkbox" class="click" checked="true"  onclick="filterDataSrcBldg(this,'SrcBuildingID');" />
            <span class="checkbox">#:BuildingName#</span>
        </div>
    #}else{#
    <div class="item click" data="${BuildingID}">
        <input type="checkbox" class="click"  onclick="filterDataSrcBldg(this,'SrcBuildingID');" />
        <span class="checkbox">#:BuildingName#</span>
    </div>
    #}#       
</script>

我用来修改的代码可以替换元素的html。

$("#srcBldgTemplate").html().replace('103', $(currChkBldg).next().html());

但是,当我随后在$(“#srcBldgTemplate”)。html()上运行警报时,模板中的值一直为103,而不是新值。

Kendo重新加载模板时,如何动态更改模板并使用更新的模板值?

gitsitgo

您的问题是那.html()是一个GET方法。它仅获取模板的副本,因此当您替换值时,它将更改副本实例,但不会更改原始值。

为了设置新模板,您必须使用.html(htmlString)

所以做这样的事情:

var newTemplate = $("#srcBldgTemplate").html().replace('103', $(currChkBldg).next().html());
$("#srcBldgTemplate").html(newTemplate);

获取并替换模板,将其存储在temp变量中。然后,您可以将该临时变量设置为新模板。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章