有没有办法在slickgrid 2.4.3中以编程方式选择行?

时间:2019-04-02 12:05:50

标签: javascript selection slickgrid

我已将slickgrid表从2.3.2更新为2.4.3。 我所有的代码都能正常工作,例如编辑器,格式化程序,后期渲染等。 在旧版本的网格中,我找到了一种以编程方式选择任何行并使单元格可编辑的方法,然后调用onSelectionChange回调函数。 升级到新版本后,我无法做同样的事情。

我为网格制作了一个包装构造函数,在这个类中我写道:

...
this.getGrid().setSelectionModel( new Slick.RowSelectionModel() );
....

/**
 * @param {Number} values.id
 * @param {String} values.column
 * @param {Boolean} values.forceEdit
 */
this.selectRow = function ( values ) {
        var row = this.getDataView().getIdxById( values.id );
        if ( values.column ) {
            var cell = this.getGrid().getColumnIndex( values.column );
            this.getGrid().gotoCell( row, cell, values.forceEdit );
        } else {
            setTimeout( function ( ) {
                self.getGrid().setSelectedRows( [values.id] )
            }, 200 )
        }
    }
...

通过这种方式,单元格在编辑模式下变得正确,因为编辑器出现在网格中,但是未正确选择行并且未调用onSelectionChange回调。 该方法与我先前使用的slickgrid版本相同。

0 个答案:

没有答案