我允许用户编辑网格的某些单元格。例如,当他们输入日期单元格时,弹出一个日期选择器并选择一个日期。这个更改单元格内容的操作会触发网格的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
}
但这并没有清除红旗。什么是清除它的正确方法?
答案 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;
}