Kendo Grid - 编辑创建为重复行的行

时间:2016-12-15 13:58:08

标签: javascript jquery kendo-ui kendo-grid

此问题是对现有问题的扩展:How to copy paste an entire row with in the same grid in Kendo UI Jquery

我能够在点击按钮时添加重复的行,但我面临的问题是我还需要编辑重复的行而不是原始的行。每当我点击要编辑的单元格时,我都会收到此错误: kendo.all.js:4515 Uncaught TypeError:i.wrap不是函数(...)

我可以编辑原始行但无法编辑重复的行。我在这里错过了什么吗?

1 个答案:

答案 0 :(得分:0)

假设您正在完全按照链接的问题/答案中所述添加重复的行...

当我使网格可编辑时,我没有得到错误:true。您需要提供一个代码示例,显示您的设置和错误。

现在,说了这些,我已经接受了链接的答案并从中做了一个Dojo,使网格可编辑并成功编辑了重复的行。

http://dojo.telerik.com/@Stephen/EHeFU

必须进行轻微更改才能使编辑正常工作,因为没有它们,编辑重复的dataItem也会对原始dataItem进行更改,因为它们具有相同的标识符,除非您对它执行某些操作,即:

$("#duplicate").on("click", function() {
    var items = [];
    $(":checked", grid.tbody).each(function(idx, elem) {
      var row = $(elem).closest("tr");
      // Must duplicate the raw data only using toJSON(), otherwise the duplicated item will have the same identifier(uid) as the original.
      var item = grid.dataItem(row).toJSON();
      items.push(item);
    });
    for (var i = 0; i < items.length; i++) {
      // You must also clear the model's id field otherwise the copy may not be treated as a new item.
      items[i].ProductID = 0;
      grid.dataSource.add(items[i]);
    }
});