如何从Kendo网格中的ClientTemplate调用javascript方法?

时间:2013-11-06 17:48:45

标签: javascript asp.net-mvc kendo-ui

是否可以在Kendo网格的ClientTemplate中添加一个javascript语句? 我想在客户端上计算一些数据,然后将结果放在行中。

我试过了:

 columns.Bound("ExecutionStartDateTime").Title("SummaryLine").Width("20%").ClientTemplate("<script> scheduleForm.generateSummary(#= ExecutionStartDateTime #, 2); </script>");

然而,它没有效果。

1 个答案:

答案 0 :(得分:13)

您可以使用模板文字语法:

<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(...){#...#}#syntax编写内联javascript。 This faq会帮助你。