在不关闭弹出窗口的情况下将多个项目添加到 MVC Kendo 网格

Add multiple items to a MVC Kendo grid without closing the popup

我正在使用 MVC Kendo 网格来显示项目列表。我可以使用 Kendo 默认弹出窗口一个接一个地添加项目。

现在我希望能够在短时间内添加很多项目。我的想法是添加第一项并能够保持弹出窗口打开以添加第二项,依此类推。

当我为第一项按 'Update' 时,我想插入此项并使用默认值重置所有弹出字段以准备添加第二项。

可以像这样在代码中添加对象:

        var grid = $("#" + gridname).data("kendoGrid");
        var c = @Html.Raw(Json.Encode(new YourClass() { Id = 0, ... }));
        grid.dataSource.insert(0, c);

然后根据需要迭代多次。

我找到了适合我的解决方案。在 Grid RequestEnd 事件中,我调用了一个 JS 方法,该方法将调用我的按钮的 Click() 方法。

/* Script / 
function ItemRequestEnd(e) { 
 switch (e.type) { 
  case 'create': 
   window.setTimeout(ReopenItemWin, 500); 
   break; 
  case 'update': 
   ... 
   break; 
  } 
 onDetailsRequestEnd(e); 
} 
function ReopenItemWin() { 
 $('#createItem').click(); } 

/ View */ 
@(Html.Kendo().Grid<myModel>().Name("Grid_Item") 
  ... 
  .Events(ev => ev.RequestEnd("ItemRequestEnd"))