javascript - 如何保存 SlickGrid 列顺序(js)?

标签 javascript slickgrid

我的应用程序中有两个网格。

var columns1 = [
    {
        name: "Address",
        field: "address"
        id: "address",
        sortable: true
    }
]

var columns2 = [
    {
    {
        name: "Rating, in %",
        field: "rating"
        id: "rating_percent",
        resizable: false
    }
]

它们之间是绝对独立的。另外,我在另一个 js 文件中有一些网格事件描述。

    grid.onColumnsReordered.subscribe(function (e, args) {
        _this.updateHeaderRow();
            // here
    });

当用户更改列顺序时,我想保存此顺序。我是否应该更改(覆盖)DOM 元素,我的意思是 column1column2? 所以问题:如何保存列顺序?

最佳答案

njr101 的回答(使用 store.js)很好,但请注意:store.js 不能存储函数(即对于编辑器、格式化程序),所以一旦你 store.get() 列,你就需要添加函数回来,使用你原来的库存“列”数组:

if (store.get('gridColumns')) {
    grid.setColumns(store.get('gridColumns'));      // Restore settings if available

    grid.getColumns().forEach(function(ch) {    // Re-create editor and formatter functions
        var result = $.grep(columns, function(e){ return e.id == ch.id; });
        if (result[0]) {
            ch.editor = result[0].editor;
            ch.formatter = result[0].formatter;
        }
    });
}

关于javascript - 如何保存 SlickGrid 列顺序(js)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11240830/

相关文章:

javascript - 更新 ng-view 而不更新 url

css - 将 CSS 样式分配给 SlickGrid 行

jquery - SlickGrid 中的展开和折叠事件

jquery - 如何在更改另一个单元格值时自动填充光滑网格中单元格的值

javascript - 如何使用fancybox dialog插件直接显示一个div

javascript排序,比较3种不同类型并按顺序排序

javascript - 具有特定子元素的查询选择器

javascript - 如何使用 angularJS 创建门户网站

javascript - SlickGrid:如何查看列标题中的全文?

Javascript 变量就像引用而不是对象