Kendo UI儿童网格 - >取消确认两次取消确认

时间:2012-12-05 15:13:00

标签: events kendo-ui

我有一个有子/子网格的网格。它工作正常,我可以添加和删除。但是,当我尝试运行command.destroy时,如果我在确认按下取消,它会再次触发(所以我必须再次按取消)。如果我选择确认,它不会再次弹出,并在第一次尝试时删除它。

我不确定导致这种情况,我不认为这是我的CSHTML,只是需要第二意见。

@(Html.Kendo().Grid<ModelA>()
.Name("Grid")

.Columns(columns => 
{
    columns.Bound(o => o.ID).Width(50);
    columns.Bound(o => o.Name).Width(300);
    columns.Bound(o => o.UpdateUser).Width(100);
    columns.Bound(o => o.UpdateDate).Format("{0:d}").Width(100);
    columns.Command(command => { command.Edit(); command.Destroy(); });

})
.ToolBar(toolbar => toolbar.Create())
.ClientDetailTemplateId("adTemplate")
.Pageable()
.Editable(editable => editable.Mode(GridEditMode.PopUp).TemplateName("RoleTemplate"))
.DataSource(dataSource => dataSource
    .Ajax()
    .Read(read => read.Action("RoleRead", "Role"))
    .Update(update => update.Action("RoleUpdate", "Role"))
    .Create(create => create.Action("RoleCreate", "Role"))
    .Destroy(destroy => destroy.Action("RoleRemove", "Role"))
    .PageSize(10)
    .Model(model => 
    {
        model.Id(c => c.ID);
        model.Field(c => c.UpdateUser).Editable(false).DefaultValue(Context.User.Identity.Name);
        model.Field(c => c.UpdateDate).Editable(false).DefaultValue(DateTime.Now);
    })   
    )
.Sortable()
.Filterable()
)  

<script id="adTemplate" type="text/kendo-tmpl">
    @(Html.Kendo().Grid<ModelAChild>()
            .Name("Roles_#=ID#")
            .Columns(columns =>
            {
                columns.Bound(s => s.ActiveDirectoryGroup).Width(500);
                columns.Command(command => { command.Destroy(); });
            })
            .ToolBar(toolbar => toolbar.Create())
            .Editable(editable => editable.Mode(GridEditMode.PopUp).TemplateName("RoleSecurityTemplate"))
            .DataSource(dataSource => dataSource
                .Ajax()
                .Read(read => read.Action("RoleReadSecurity", "Role", new { roleID = "#=ID#" }))
                .Create(create => create.Action("RoleAddSecurity", "Role", new { roleID = "#=ID#" }))
                .Destroy(destroy => destroy.Action("RoleRemoveSecurity", "Role", new { roleID = "#=ID#" }))
                .Model(model => 
                    {
                        model.Id(s => s.ID);
                        model.Field(s => s.UpdateUser).Editable(false).DefaultValue(Context.User.Identity.Name);
                        model.Field(s => s.UpdateDate).Editable(false).DefaultValue(DateTime.Now);
                    })    
                    )
            .Pageable()
            .Sortable()
            .ToClientTemplate())
</script>

1 个答案:

答案 0 :(得分:1)

将您的版本更新为最新版本。这是在一些版本之前修复的。