【问题标题】:kendo grid delete - confirmation window issues剑道网格删除 - 确认窗口问题
【发布时间】:2023-04-11 02:00:01
【问题描述】:

我在删除项目时出现确认弹出窗口的问题。当我单击“删除”时,确认窗口弹出多次,我不知道为什么。第二个问题是如何更改该窗口的文本?我试过这段代码但不起作用:

columns: [
   ...,
{command: [{name: "destroy", text: "Delete Item", click: deleteItem}],
 title: " ", width: "100px"}
]

及删除功能:

function deleteItem(e) {
   var item = this.dataItem($(e.currentTarget).closest("tr"));
   if (confirm("delete item " + item.Name + " ?")) {
      var grid = $("grid").data("kendoGrid");
      grid.dataSource.remove(item);
      grid.dataSource.sync();
      grid.refresh();
   }
}

编辑: 我发现的第二个问题是,单击更新按钮后,网格中的一些项目被删除了

【问题讨论】:

    标签: kendo-ui kendo-grid crud destroy confirm


    【解决方案1】:

    【讨论】:

    • 我忘记了带有窗口​​ id 的 div :) .. 所以删除有效,但我发现更新有问题 ... 单击更新按钮后,某些项目将从网格中删除或删除所有项目 .. 它是随机
    • 我的代码在这里jsfiddle.net/brg2eraq ...但不能工作,因为我的服务只是本地的
    【解决方案2】:

    您可能必须在删除处理程序中的所有其他代码之前尝试使用以下代码

    e.preventDefault()
    

    这将阻止默认窗口的执行,并为弹出确认提供空间。因此,您面前只允许一个窗口 我希望这会有所帮助

    【讨论】:

    • 如果可能,您能否通过更新更多代码或创建 JsFiddle 来详细说明您的问题?
    • 嗨,删除我修复的项目缺少 div 窗口...但是你能帮我解决第二个问题吗?单击更新按钮后,从网格中删除一个或多个项目
    • 我的代码在这里jsfiddle.net/brg2eraq ...但不能正常工作,因为我的服务只是本地的
    【解决方案3】:

    重复确认是由于您将命令绑定到名称“destroy”,这是网格提供的built-in command。该命令正在触发,显示内置确认,然后显示您的确认。如果您希望自己处理 destroy 方法,只需将命令重命名为您独有的“destroy”以外的其他名称,以便不会触发默认命令事件:

    {command: [{name: "delete", text: "Delete Item", click: deleteItem}], title: " ", width: "100px"}
    

    看来您的 deleteItem 函数还存在一些其他问题。请尝试以下方法:

    function deleteItem(e) {
       var item = this.dataItem($(e.target).closest("tr"));
       if (confirm("delete item " + item.Name + " ?")) {
          var grid = $("#grid").data("kendoGrid");
          grid.dataSource.remove(item);
          grid.dataSource.sync();
          grid.refresh();
       }
    }
    

    请注意,我将您的代码更改为使用 e.target 而不是 e.currentTarget 并且还修改了您的jQuery 选择器查找 #grid 而不是 grid 假设您查询的是 id 而不是类.

    请参阅 this snippet 以获取与您正在尝试做的类似的工作示例。

    【讨论】:

    • 好的,我修复代码并尝试在浏览器中调试,但我发现了这个错误ctrlv.cz/shots/2016/06/28/Zytu.png 也许这就是我在窗口出现问题的原因...你知道为什么无法初始化项目吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多