Javascript 在网格之间拖放后,未维护kendo mcv网格行格式

Javascript 在网格之间拖放后,未维护kendo mcv网格行格式,javascript,kendo-ui,drag-and-drop,kendo-grid,kendo-asp.net-mvc,Javascript,Kendo Ui,Drag And Drop,Kendo Grid,Kendo Asp.net Mvc,问题: 从一个栅格拖放到另一个栅格(两个方向)的结果会导致行数据与相应的标题不正确对齐 拖放前: 之后(行被放到另一个表中,然后又被放到原始表中) 为简洁起见,我将发布网格的列定义。轴网使用相同的模型,但并非所有柱在两个轴网中都可见 网格1: ... .Name("Group1") .Columns(columns => { columns.Bound(e => e.FlagId).Hidden(true);

问题: 从一个栅格拖放到另一个栅格(两个方向)的结果会导致行数据与相应的标题不正确对齐

拖放前:

之后(行被放到另一个表中,然后又被放到原始表中)

为简洁起见,我将发布网格的列定义。轴网使用相同的模型,但并非所有柱在两个轴网中都可见

网格1:

  ...
    .Name("Group1")
    .Columns(columns =>
           {
              columns.Bound(e => e.FlagId).Hidden(true);
              columns.Bound(e => e.TransactionId).Hidden(true);
              columns.Bound(e => e.EmployeeId).Hidden(true);
              columns.Bound(e => e.EmployeeName);
              columns.Bound(e => e.FlagDate).Hidden(true);
              columns.Bound(e => e.FlagCreatedById).Hidden(true);
              columns.Bound(e => e.FlagCreatedBy).Hidden(true);
              columns.Bound(e => e.Reason).Hidden(true);
              columns.Bound(e => e.Score).HtmlAttributes(new { @class = "currency" });
                        columns.Bound(e => e.NumberOfTransactions).HtmlAttributes(new { @class = "currency" });
                        columns.Bound(e => e.TotalAmount).HtmlAttributes(new { @class = "currency" });
                    })
  ...
网格2:

  ...
   .Name("Group2")
   .Columns(columns =>
          {
              columns.Bound(e => e.FlagId).Hidden(true);
              columns.Bound(e => e.TransactionId).Hidden(true);
              columns.Bound(e => e.EmployeeId).Hidden(true);
              columns.Bound(e => e.EmployeeName);
              columns.Bound(e => e.FlagDate);
              columns.Bound(e => e.FlagCreatedById).Hidden(true);
              columns.Bound(e => e.FlagCreatedBy);
              columns.Bound(e => e.Reason);
              columns.Bound(e => e.Score).HtmlAttributes(new { @class = "currency" });
              columns.Bound(e => e.NumberOfTransactions).Hidden();
              columns.Bound(e => e.TotalAmount).HtmlAttributes(new { @class = "currency" });
          })
  ...
删除javascript:

   group1.kendoDropTarget({
        drop: function (e) {
            console.log("e.draggable.currentTarget: %O", e.draggable.currentTarget);

            e.dropTarget.append($(e.draggable.currentTarget).clone());
            $(e.draggable.currentTarget).remove();
        },
        group: "gridGroup2"
    });

不要玩DOM——在本例中,这不是一个好的实践,imo——尝试只复制数据并将其添加到目标网格中

drop: function(e) {
    var sourceGrid = $(e.draggable.element).data("kendoGrid"),
        dataItem = sourceGrid.dataItem(e.draggable.currentTarget);

    $(e.dropTarget).data("kendoGrid").dataSource.add(dataItem);
}