javascript - 剑道网格 : Canceling edit deletes new row

标签 javascript kendo-ui telerik kendo-grid

这是一个demo为我正在经历的行为。

如果您编辑 ID 为 1 的现有行,将文本更改为其他内容,然后按取消按钮,该行将正确恢复到其先前的状态。

为了重现我的问题,您需要:

  • 添加新行
  • 按更新按钮保存。
  • 再次选择该行并按更新按钮。
  • 按取消键
  • 该行消失了!

即使有类似的问题,我也没有找到满意的答案。

有人说我需要定义一个id。从我的演示中可以看出,这没有任何区别,新行有一个 id,它仍然消失。

当你使用远程数据源时有一些建议,但这对我来说不起作用,我需要使用本地数据。

最后,有 this回答。虽然它确实可以防止新行消失,但取消该行不会将数据恢复到其旧状态,它只会关闭编辑器并且数据与编辑后的位置相同。

最佳答案

遇到了同样的问题。我通过简单地调用 DataSource 的 cancelChanges() 方法解决了这个问题:

..
cancel: function(e) {
            $('#mainGrid').data('kendoGrid').dataSource.cancelChanges();
        },
..

关于javascript - 剑道网格 : Canceling edit deletes new row,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23132357/

相关文章:

javascript - 两个同时发生的事件

javascript - 剑道数字文本框删除焦点上的尾随零

asp.net-mvc - Telerik 控制与 ASP.NET MVC : Does this violate the MVC model?

具有多个固定高度部分和相对于窗口大小的某些部分的 WPF 布局

javascript - 当使用 ASP MVC 帮助程序持久_if_渲染时,Telerik Kendo UI 网格错误地序列化工具栏按钮

javascript - IE8 的类和属性选择器问题

javascript - 表未显示 laravel vue 组件中数据库的数据

javascript - 将 ref 与 React.createElement 一起使用

javascript - kendo 图表在 y 轴上以 dd/MM/yyyy 显示日期

angularjs - 无法获取 angularjs 中折叠树节点的数据源