剑道网格-添加行,然后排序/更改页面



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

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

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

一种解决方法是在客户端页面上,为标题单击添加一个事件,该事件将调用cancel。

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

请注意,这将使网格丢失所有更改。

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

您可以添加sort: onSortingFunctionName,到您的网格定义。然后编写函数来取消更改。查看这里可能发生的事件:https://demos.telerik.com/kendo-ui/grid/events

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

最新更新