KendoUI网格不会触发saveChanges事件

时间:2013-12-05 10:26:07

标签: javascript asp.net-mvc-4 kendo-ui kendo-grid kendo-asp.net-mvc

我对KendoUI网格控件中的事件有疑问。我在网格初始化后分配了“saveChanges”事件。我使用弹出窗口进行数据编辑。我想在用户按下“保存”按钮时触发事件“saveChanges”。不幸的是,事件没有被解雇。我无法弄清楚问题是什么,而且其他事件也有效。网格在MVC助手中初始化。事件以JavaScript分配。

以下是我正在使用的JavaScript代码:

 function bindGridEvents() {
        var that = this;

        //kendoGrid is an abbreviation of: $("#grid").data("kendoGrid")

        kendoGrid.bind("dataBound", function () { }); // works
        kendoGrid.bind("edit", function (event) { }); // works
        kendoGrid.dataSource.bind("error", function (event) {}); // works
        kendoGrid.bind("saveChanges", function (event) { console.log("This event is not fired!"); });
        kendoGrid.bind("save", function (event) { }); // works
    }

我已经花了很多时间自己找到解决方案而没有成功。我将不胜感激。

修改

我发现了问题所在。文档说:

  

当用户单击“save”命令时会触发saveChanges事件   按钮。

但是当弹出窗口显示标签为“Save”的命令时,类型为“update”。这就是它在编辑模式下不起作用的原因。它仅适用于工具栏。一开始并不明显,文档也没有说太多,所以要注意这一点。

1 个答案:

答案 0 :(得分:0)

没有看到代码,我无法确定。如果没有你做任何改变,我不相信这个事件。适合我的好例子是here。如果您不是通过网格功能处理实际的dataItem编辑,请确保将该项标记为“脏”。理想情况下,将您的代码发布为JsFiddle或JSBin。