2014-02-10 110 views
0

我们如何在使用Kendo UI Grid时使用自定义删除确认消息框?如何绑定Kendo网格自定义命令点击事件?

我正在研究ASP.NET MVC4应用程序。以下是我的剑道网格代码。

我想使用自定义确认消息框代替默认销毁命令确认框。并且为此,我使用自定义命令代替销毁命令。

但我的问题是我想在.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>        

回答

0

在您的deleteRow函数中,从网格中删除该行后,使用以下代码来同步网格。同步功能将相应地触发服务器端操作取决于您对网格所做的更改。

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