KendoUI网格自定义命令被多次触发

时间:2013-03-21 18:00:03

标签: kendo-ui kendo-grid

我有一个KendoUI网格。其中,其中一列定义了自定义命令:

command: { text: "Add", click: addLine }

当用户点击按钮时,此网格显示在Kendo窗口内。同一个按钮会重新呈现网格并首先清除HTML:

$("#kendoGridQuick").html("");
$("#kendoGridQuick").kendoGrid({

创建网格后,窗口显示。我的问题是,这个命令被完全激发了很多次,我已经显示了这个窗口并创建了网格。所以它第一次工作正常,但是第二次被调用两次,第三次被调用三次等等。

3 个答案:

答案 0 :(得分:3)

问题在于您没有销毁Grid对象。在清除HTML之前,您应该调用Grid.destroy方法。

var grid = $("#kendoGridQuick").data("kendoGrid");
// detach events
grid.destroy();

此外,尝试节省CPU和内存关闭和打开但不破坏网格。只要您始终使用相同的基本结构,您就可以在窗口即将打开时重新绑定/重新读取新数据(更快更简单)。

答案 1 :(得分:2)

而不是浪费CPU创建和销毁网格。在加载页面时仅初始化网格一次,并在单击按钮时显示/隐藏窗口(您不需要重新初始化它)。

如果您仍然遇到困难,请分享一些代码,以便我们可以看到您在何处以及如何初始化网格。

答案 2 :(得分:-1)

这是剑道网格。但是,我们可以在再次出价数据之前处理以下内容以清除网格。

$("#gridSaleEvent&#34)的HTML。("&#34);