nou*_*ime 5 javascript kendo-ui kendo-grid kendo-tooltip kendo-template
我正在尝试为我的网格创建一个工具提示,如下所示:
$("#grid").kendoTooltip({
autoHide: true,
showOn: "mouseenter",
width:125,
height:125,
position: "right",
filter: ".k-grid-content a.hasTooltip",
content: kendo.template($("#storeTerritory").html())
});
Run Code Online (Sandbox Code Playgroud)
模板定义:
<script type="text/x-kendo-template" id="storeTerritory">
<div class="tooltipcontent">
#for(var i = 0; i < Territories.length; i++){#
#if (Territories != 'null' && Territories != '') {#
<p>#=Territories[i].TerritoryDescription#</p>
#} else{#
<p>Information not available</p>
#}#
#}#
</div>
</script>
Run Code Online (Sandbox Code Playgroud)
我在这里设置了一个示例:http:
//jsbin.com/iJunOsa/21/edit
我得到了ReferenceError: Territories is not defined在控制台错误,当我鼠标移到"威尔顿"
假设我storeTerritory要用普通的HTML 替换模板的内容,然后出现工具提示:
<p>Wilton</p>
Run Code Online (Sandbox Code Playgroud)
问题可能是什么?
问题是没有与工具提示相关的模型; 为了做你想做的事,你需要使用一个函数创建内容:
$("#grid").kendoTooltip({
autoHide: true,
showOn: "mouseenter",
width: 125,
height: 125,
position: "right",
filter: ".k-grid-content a.hasTooltip",
content: function (e) {
var row = $(e.target).closest("tr");
var dataItem = $("#grid").data("kendoGrid").dataItem(row);
var template = kendo.template($("#storeTerritory").html());
return template(dataItem);
}
});
Run Code Online (Sandbox Code Playgroud)
(更新演示)
| 归档时间: |
|
| 查看次数: |
16667 次 |
| 最近记录: |