【问题标题】:e(...).find(...).addBack is not a function Kendo Grid SetOptionse(...).find(...).addBack 不是函数 Kendo Grid SetOptions
【发布时间】:2016-03-28 20:01:05
【问题描述】:

我有一个带有按钮的网格,可以将您带到显示所选项目的所有数据的其他视图,我想要做的是当用户返回网格视图时,网格的过滤器保留而不是显示所有数据。

为了保存过滤器,我使用 Kendo Grid 的 getOptions 方法并使用以下代码存储在 localStorage 上:

var grid = $("#Grid").data("kendoGrid");
var op = grid.getOptions();
localStorage["KendoGridOptions"] = JSON.stringify(op);

得到这个:

问题是当我尝试使用setOptions 方法时,我在初始化网格后在$(document).ready 上执行此操作:

var options = localStorage["KendoGridOptions"];
if (options) {
    var op = JSON.parse(options);
    var grid = $("#Grid").data("kendoGrid");
    grid.setOptions({
        dataSource: op.dataSource
    });
    localStorage.removeItem("KendoGridOptions");
}

我在gid.setOptions 行收到此错误:

关于如何解决该错误或如何获得所需行为的任​​何建议?

【问题讨论】:

    标签: javascript kendo-ui kendo-grid


    【解决方案1】:

    问题是jQuery版本,1.8版本增加了addBack功能,这个项目还是1.7,换个版本就完美了。

    【讨论】:

    • 你是最棒的,这救了我。
    【解决方案2】:

    我通过以下方法实现了。如果您只想要页码、页面大小、排序和过滤器,请仅提及这些。我尝试保存所有选项,但我记得有问题。我在这方面花了很多时间。如果您还有任何问题,请告诉我

    function saveGridOptions() {
    var grid = $("#gridName").data("kendoGrid");
    var dataSource = grid.dataSource;
    
    var state = {
        page: dataSource.page(),
        pageSize: dataSource.pageSize(),
        sort: dataSource.sort(),
        filter: dataSource.filter()
    };
        localStorage["kendo-grid-options"] = kendo.stringify(state);    
    }
    
    
    function loadGridOptions() {
    var grid = $("#gridName").data("kendoGrid");
    var state = "";   
    state = localStorage["kendo-grid-options"];
    
    if (state) {
    
        data = JSON.parse(state);
        var options = grid.options;
        options.dataSource.page = data.page;
        options.dataSource.pageSize = data.pageSize;
        options.dataSource.sort = data.sort;
        options.dataSource.filter = data.filter;
        grid.destroy();
    
        $("#gridName")
       .kendoGrid(options);
    
    }
    

    }

    【讨论】:

    • 我尝试使用你的代码,但仍然有同样的错误,现在在grid.destroy() 行,你知道吗?
    • 问题是jQuery版本,1.8版本增加了addBack功能,这个项目还是1.7,换个版本就完美了。
    猜你喜欢
    • 2023-03-13
    • 1970-01-01
    • 1970-01-01
    • 2018-10-01
    • 2019-08-04
    • 1970-01-01
    • 1970-01-01
    • 2018-03-08
    • 2019-01-18
    相关资源
    最近更新 更多