捕获剑道 UI 网格筛选器更改事件以保存/加载选项



有没有办法捕获过滤器更改的事件来存储/显示过滤器选项?

我会使用它在站点重新加载后初始化网格过滤器(因为它们是这样(。

只需订阅一个过滤器事件:

filter: function(e) {      
if (e.filter != null) {
//do something with filter e.g save to local storage or somewhere
}
}

谢谢普热梅斯瓦夫,

是的,我按如下方式使用它来存储/加载会话存储(打字稿(中的过滤器。过滤器应由 dataBound(或更改(事件 - 回调读取。稍后在站点重新加载后,应使用保存的过滤器配置数据源 - 如您所提到的。

// Save filters to storage
const grid = new kendo.ui.Grid (
...,
dataBound: (e) => {
const filters: kendo.data.DataSourceFilters = this.kendoGrid.dataSource.filter();
if (filters) {
sessionStorage.setItem("kendo-filters", kendo.stringify(currentFilters));
}
},
...
// Set kendo filters from storage
const o = sessionStorage.getItem("kendo-filters"); 
const filters: any  = o ? JSON.parse(o) : {};
public createDataSourceOData() : kendo.data.DataSource {
...,
filter: filters || {},
...,
}

最新更新