Kendo Grid - 添加行然后排序/更改页面

时间:2014-07-10 04:14:06

标签: asp.net-mvc kendo-ui kendo-grid

当您在Kendo Grid上添加新项目时,它会添加一行输入字段/编辑器模板。在保存之前,当您对页面进行排序或切换时,它会将添加的行呈现到网格上。

它没有进行任何ajax调用,因此它并没有真正保存在后端/数据库中,但我唯一的问题是它不应该在网格中呈现(排序应该真的只需取消任何现有的添加/编辑。)

对此有任何修复或解决方法吗?谢谢!

2 个答案:

答案 0 :(得分:1)

一种解决方法是在客户端页面上,向将调用取消的标题点击添加一个事件。

$("th.k-header").click(function(){
    $("#grid").data('kendoGrid').cancelChanges(); 
});

请注意,这会使网格失去所有更改。

另一种解决方法是在单击保存更改后处理数据,删除数据源传输的parameterMap或控制器的服务器端的空行,您可以忽略无效的行。

答案 1 :(得分:0)

您可以将排序:onSortingFunctionName 添加到网格定义中。然后,编写函数以取消更改。 在此处检查可能的事件:https://demos.telerik.com/kendo-ui/grid/events

function onSortingFunctionName(arg) {
     $("#grid").data('kendoGrid').cancelChanges();
}