0

我用删除命令设置了一个剑道网格。

按下删除按钮时,永远不会触发删除操作。

这是我的代码:

看法:

@(Html.Kendo().Grid<portal.Models.UserVisitor>()
    .Name("grid")
    .Columns(columns =>
    {
        columns.Bound(v => v.visitorName).Filterable(false).Title("Visitors");
        columns.Command(command => command.Destroy());
    })
    .Sortable()
    .Scrollable()
    .Filterable()
    .DataSource(dataSource => dataSource
        .Ajax()
        .ServerOperation(false)
        .Batch(true)
        .Model(model =>
        {
            model.Id(v => v.fkVisitorId);
            model.Field(v => v.visitorName).Editable(false);
        })
        .PageSize(20)
        .Read(read => read.Action("Visitors_Read", "Visitor"))
        .Destroy(update => update.Action("Visitors_Delete", "Visitor"))
     )
    .Resizable(resize => resize.Columns(true))
)

控制器访客:

    [AcceptVerbs(HttpVerbs.Post)]
    public ActionResult Visitors_Delete([DataSourceRequest] DataSourceRequest request,UserVisitor model)
    {
        return Json(ModelState.ToDataSourceResult());
    }        

有谁知道这有什么问题??

4

2 回答 2

4

如果您希望 Destroy 命令立即命中服务器,则需要使用内联编辑模式:

@(Html.Kendo().Grid<portal.Models.UserVisitor>()
    .Name("grid")
    .Columns(columns =>
    {
        columns.Bound(v => v.visitorName).Filterable(false).Title("Visitors");
        columns.Command(command => command.Destroy());
    })
    .Sortable()
    .Scrollable()
    .Filterable()
    .Editable(editable => editable.Mode(GridEditMode.InLine))
    .DataSource(dataSource => dataSource
        .Ajax()
        .ServerOperation(false)
        .Batch(true)
        .Model(model =>
        {
            model.Id(v => v.fkVisitorId);
            model.Field(v => v.visitorName).Editable(false);
        })
        .PageSize(20)
        .Read(read => read.Action("Visitors_Read", "Visitor"))
        .Destroy(update => update.Action("Visitors_Delete", "Visitor"))
     )
    .Resizable(resize => resize.Columns(true))
)
于 2013-06-25T06:55:31.130 回答
3

尝试明确定义网格应该采取的行动。

.Destroy(update => update.Action("Visitors_Delete", "Visitor")).Type(HttpVerbs.Post))
于 2014-03-05T00:31:58.817 回答