Сетка кендо с подсказкой кендо из встроенного шаблона не работает
У меня есть сетка кендо с подсказкой, отображающей детали в подсказке кендо. Следующий шаблон при использовании в качестве внешнего шаблона работает. Тем не менее, я не уверен, что шаблон может быть передан как встроенный шаблон.
Вот мой код, Внешний шаблон
<script id="javascriptTemplate" type="text/x-kendo-template">
<ul>
# for (var i = 0; i < data.applications.length; i++) { #
<li>#= data.applications[i].name #</li>
# } #
</ul>
</script>
и это называется в контроллере как,
$scope.toolTipOptions = {
filter: "td:nth-child(4)",
position: "right",
content: function(e) {
var grid = e.target.closest(".k-grid").getKendoGrid();
var dataItem = grid.dataItem(e.target.closest("tr"));
var template = kendo.template($("#javascriptTemplate").html());
return template(dataItem);
},
show: function(e) {
this.popup.element[0].style.width = "200px";
this.popup.element[0].style.left = "10px";
}
}
Но когда я пытаюсь передать встроенный шаблон, он жалуется, что шаблон не является функцией. любые указания относительно того, как я мог бы передать встроенный шаблон в этом случае
$scope.toolTipOptions = {
filter: "td:nth-child(4)",
position: "right",
content: function(e) {
var grid = e.target.closest(".k-grid").getKendoGrid();
var dataItem = grid.dataItem(e.target.closest("tr"));
var template = "<ul>\# for (var i = 0; i < data.applications.length; i++) { #<li>#= data.applications[i].name #</li>\# } #</ul>"
return template(dataItem);
},
show: function(e) {
this.popup.element[0].style.width = "200px";
this.popup.element[0].style.left = "10px";
}
}
1 ответ
Во втором решении вам, вероятно, просто нужно kendo.template()
, В вашем коде template
определяется на одну строку выше, как строка.