【问题标题】:Kendo UI MVC call javascript nested functionKendo UI MVC调用javascript嵌套函数
【发布时间】:2019-11-01 16:07:46
【问题描述】:

假设:

    @(Html.Kendo().Grid(Model)
       .Name("gridListCustomers")
       .Columns(gcf =>
       {
           gcf.Bound(c => c.Id).Hidden(true);
           gcf.Bound(c => c.Nom);
       })
       .Events(e => e.Change(???OnChange???)))

     <script>
       (function () {
          function OnChange (){
             //Todo
          }
       })();
     </script>

如何仅在定义 MVC 模板的情况下调用嵌套函数?

【问题讨论】:

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


    【解决方案1】:

    函数OnChange 只能在闭包范围内使用,这就是闭包的用途。

    但是你可以用另一种方式分配 change 事件,使用bind()

    <script>
        $(function () {
            let grid = $('[name="gridListCustomers"]'); // Not sure if is this the right selector for your grid. Select the grid whatever way you like.
    
            grid.bind("change", function() {
                // Your chenge function body here
            }
        });
    </script>
    

    【讨论】: