0

我有一个数据网格,在初始化网格后,我们在每列的标题中添加了一个过滤器图标,如下所示:

function selectHeaderIcon(searchActive){
        if (searchActive) {
            return "ui-icon-zoomin";
        } else {
            return "ui-icon-search";
        }
    }

function updateColumnHeader(searchActive){
        self.grid.updateColumnHeader(column.id, name + '<span class="ui-icon '+selectHeaderIcon(searchActive)+' slick-resizable-handle searchLink  ' + columnCss + '" ></span>', 'Search');
    }

我还在网格上启用了列重新排序。但是,每当我重新排序列时,我的搜索图标就会消失!我通过手动添加文本来更改列名以及向 html 添加随机的新跨度,在 chrome 调试器中做了一些进一步的测试。重新排序列后,两个更改都消失了。SlickGrid 是否在某处存储我的列标题的不同副本,而不是使用显示的内容进行重新排序?如果是这样,为什么?我该如何解决这个问题?

4

1 回答 1

0

听起来您需要订阅 onColumnsReordered 事件,如下所示:

GridName.onColumnsReordered.subscribe(function(e, args) {
    updateColumnHeader(searchActive);
});
于 2012-02-01T19:34:08.927 回答