如何从 Kendo 网格中的 ClientTemplate 调用 javascript 方法?
Posted
技术标签:
【中文标题】如何从 Kendo 网格中的 ClientTemplate 调用 javascript 方法?【英文标题】:How to call javascript method from ClientTemplate in Kendo grid? 【发布时间】:2013-11-18 02:32:36 【问题描述】:是否可以在剑道网格的ClientTemplate 中放入javascript 语句? 我想在客户端计算一些数据,然后将结果放在行中。
我试过了:
columns.Bound("ExecutionStartDateTime").Title("SummaryLine").Width("20%").ClientTemplate("<script> scheduleForm.generateSummary(#= ExecutionStartDateTime #, 2); </script>");
但是,它没有任何效果。
【问题讨论】:
【参考方案1】:您可以使用模板文字语法:
<script>
function someFuntion(date)
var result = "";
// Do whatever you need here (make ajax call etc..) and return result as html string
return result;
</script>
并将您的列绑定为:
columns.Bound("ExecutionStartDateTime").Title("SummaryLine").Width("20%")
.ClientTemplate("#=someFuntion(ExecutionStartDateTime)#");
// you can even pass 'data' implicit template parameter and extract ExecutionStartDateTime from there
您甚至可以简单地使用 # if(...)# ... ## 语法编写内联 javascript。 This faq 会帮助你。
【讨论】:
以上是关于如何从 Kendo 网格中的 ClientTemplate 调用 javascript 方法?的主要内容,如果未能解决你的问题,请参考以下文章
Kendo 数据网格 - 如何从嵌套的 JSON 对象设置列值?
弹出窗口在 Kendo UI 网格中的工作原理以及如何在 MVC4 的 Kendo UI ajax 网格中将控件带入弹出窗口
Kendo UI Hierarchical datagrid - 如何从详细网格编辑器模板 MVVM 访问根视图模型