Jquery 如何在剑道网格中记住第二次请求的筛选值?

Jquery 如何在剑道网格中记住第二次请求的筛选值?,jquery,asp.net-mvc,kendo-grid,kendo-asp.net-mvc,Jquery,Asp.net Mvc,Kendo Grid,Kendo Asp.net Mvc,我正在使用剑道网格在我的MVC web应用程序中显示记录。我想要的是,当我使用某个值筛选网格,并从该页面请求另一个页面时,当我再次请求该网格页面时,我希望我的筛选值将变为在上一个请求中设置的值。我按以下方式执行: 首先,您必须将当前过滤器存储在某个位置—我使用javaScript的localStorage。只要浏览器缓存未被清除,这种情况就会持续存在。 你可以这样做,例如在离开页面时等等 // get the grid as js object var grid = $("#yourGridID

我正在使用
剑道网格
在我的MVC web应用程序中显示记录。我想要的是,当我使用某个值筛选网格,并从该页面请求另一个页面时,当我再次请求该网格页面时,我希望我的筛选值将变为在上一个请求中设置的值。

我按以下方式执行: 首先,您必须将当前过滤器存储在某个位置—我使用javaScript的localStorage。只要浏览器缓存未被清除,这种情况就会持续存在。 你可以这样做,例如在离开页面时等等

// get the grid as js object
var grid = $("#yourGridID").data("kendoGrid");

// Store the current filter (must be a string, so use JSON)
localStorage["myFilter"] = JSON.stringify(grid.dataSource.filter().filters)
要还原筛选器,可以调用

grid.dataSource.filter(JSON.parse(localStorage["myFilter"]))
这应该在网格初始化之后完成,例如在网格的数据绑定事件中。当然,您应该检查
localStorage[“myFilter”]
是否存在

如果您还想用/order保存列、排序等其他内容,还可以使用
grid.getOptions(options)
grid.setOptions(options)
保存和恢复完整的网格设置。这些选项也可以保存在本地存储中(这里也使用JSON)