我正在保存网格状态,如以下代码所示。
//for saving Grid State
function SaveGridSettings() {
var grid = $("#myGrid").data("kendoGrid");
localStorage["GridSettings"] = kendo.stringify(grid.getOptions());
}
//for applying Saved State
function setGridSettings() {
var grid = $("#myGrid").data("kendoGrid");
var options = localStorage["GridSettings"];
if (options) {
grid.setOptions(JSON.parse(options));
}
}
这也节省了一些额外的事情,例如排序和过滤。我对保存的所有内容都没问题,但没有过滤器。有什么方法可以避免保存过滤器,因为它会使用户感到烦恼,就像最后一个搜索字符串未获取任何记录,然后在将来用户看到空网格并开始大吼大叫在我们身上。此外,将设置应用回网格后,“导出到Excel”按钮也将被删除。
在这里,我为自己找到了解决方案,方法是在保存之前从选项中排除过滤器对象。请在保存网格选项的同时尝试此操作。
var Options = grid.getOptions();
delete Options.dataSource.filter;
localStorage[name] = kendo.stringify(Options);