如何绑定Kendo网格自定义命令点击事件?

时间:2014-02-10 07:08:16

标签: asp.net-mvc-4 kendo-grid add-custom-command

在使用Kendo UI Grid时,我们如何使用自定义删除确认消息框?

我正在研究ASP.NET MVC4应用程序。下面是我的Kendo Grid的代码。

我想使用自定义确认消息框代替默认的Destroy命令确认框。为此我使用自定义命令代替Destroy命令。

但我的问题是我想在.Datasource部分中触发一个serer侧操作方法(就像下面的Destroy命令代码一样),但我不知道如何使用Custom命令触发该操作。

任何人都可以帮我解决这个问题吗?

<script id="XYZTemplate" type="text/kendo-tmpl">        
@(Html.Kendo().Grid<Gts.Core.Dto.XYZDto>()                        
        .Name("XYZItem")  
        .Columns(columns =>
        {                
            columns.Bound(e => e.ID).Width(97).ClientTemplate("<span style=\"float:left\">\\#=Number\\#</span>").HtmlAttributes(new { style = "text-align:left;" });
            columns.Bound(e => e.Qty).Width(30);
            //columns.Command(command => { command.Destroy(); });    
            columns.Command(command => command.Custom("Delete").Click("deleteRow"));             
        })
                .DataSource(dataSource => dataSource
                    .Ajax()
                    .Model(model => model.Id(p => p.ID))
                    .Read(read => read.Action("Items_Read", "Product", new { ID = "#=ID#", productId = "#=FKProductID#" }))                                                                
                    //.Destroy(update => update.Action("Items_Destroy", "Product"))                      
                )


         // .Events(events =>      
     events.DataBound("dataBoundChild").Edit("dataBoundEdit").Remove("deleteProductItemChild").Save("datasourceChange"))

         .Events(events => events.DataBound("dataBoundChild").Edit("dataBoundEdit").Save("datasourceChange"))

        .Editable(editable => editable                
            .Mode(GridEditMode.InCell)
            .DisplayDeleteConfirmation(false))

        .ToClientTemplate()
)
</script>                            

1 个答案:

答案 0 :(得分:0)

在deleteRow函数中,从网格中删除行后,使用以下代码同步网格。同步功能将根据您对网格所做的更改来激发服务器端操作。

$("#XYZItem").data("kendoGrid").dataSource.sync();