Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to call javascript method from ClientTemplate in Kendo grid?

Is it possible to put in the ClientTemplate of Kendo grid a javascript statement? I would like to calculate some data on the client and then to put the result in the row.

I tried this:

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

However, it gave no effect.

like image 754
Anelook Avatar asked Nov 06 '13 17:11

Anelook


Video Answer


1 Answers

You can, with template literal syntax:

<script>
    function someFuntion(date) {
        var result = "";
        // Do whatever you need here (make ajax call etc..) and return result as html string
        return result;
    }
</script>

And bound your column as:

columns.Bound("ExecutionStartDateTime").Title("SummaryLine").Width("20%")
    .ClientTemplate("#=someFuntion(ExecutionStartDateTime)#");   
// you can even pass 'data' implicit template parameter and extract ExecutionStartDateTime from there

You can even write inline javascript simply using # if(...){# ... #}# syntax. This faq will help you.

like image 193
Bishnu Rawal Avatar answered Oct 17 '22 03:10

Bishnu Rawal