如何清除剑道网格单元角落里的小红旗

时间:2014-11-07 20:27:09

标签: kendo-grid

我允许用户编辑网格的某些单元格。例如,当他们输入日期单元格时,弹出一个日期选择器并选择一个日期。这个更改单元格内容的操作会触发网格的save事件,并导致在单元格的角落出现一个小红旗。

我尝试将dirty属性设置为false:

   save: function (e) {
        // here, save the row to the database for "real-time" saves after every change
        // no need to hit a Save button
        // <snip>
        e.model.dirty = false;  // does not remove the red flag
    }

但这并没有清除红旗。什么是清除它的正确方法?

3 个答案:

答案 0 :(得分:3)

与其名称相反,剑道网格&#34;&#34;保存&#34; event不会将修改后的数据提交给服务器。它仅仅意味着在UI小部件中输入的数据已被&#34;保存&#34;绑定数据。它仍将显示脏标志,因为它仍然是尚未提交给服务器的易失性数据。

要实际提交您需要调用网格saveChanges method的数据。这种方法只是调用网格的dataSource sync method,您可以选择这样做。无论哪种方式,一旦你这样做并且帖子成功完成,红旗就会消失。

最后,如果您将网格的dataSource autoSync property设置为true,则只要发生任何更改,dataSource就会执行同步。也就是说,每个网格&#34;保存&#34;事件实际上意味着数据已提交给服务器。

答案 1 :(得分:2)

我用这个命令来清除标志。

$('#Grid').data('kendoGrid').refresh();

答案 2 :(得分:2)

根据Telerik支持,他们建议您使用CSS。

.k-grid .k-dirty {
  display: none;
}