Javascript 如何确定ExtJS 4中Ext.grid.Panel的选定单元格?

Javascript 如何确定ExtJS 4中Ext.grid.Panel的选定单元格?,javascript,extjs,extjs4,Javascript,Extjs,Extjs4,如何获取Ext.grid.Panel的选定单元格? 在ExtJS 3中,可以通过以下方式实现: grid.getSelectionModel().getSelectedCell() 在Ext 4中有 grid.getSelectionModel().selected 但这只是给了我一个记录。也许有更直接的方法可以做到这一点,但以下几点似乎对我有用: grid.view.getCellByPosition(grid.getSelectionModel().getCurrentPosition(

如何获取Ext.grid.Panel的选定单元格? 在ExtJS 3中,可以通过以下方式实现:

grid.getSelectionModel().getSelectedCell()
在Ext 4中有

grid.getSelectionModel().selected

但这只是给了我一个记录。

也许有更直接的方法可以做到这一点,但以下几点似乎对我有用:

grid.view.getCellByPosition(grid.getSelectionModel().getCurrentPosition());

我最终需要用户单击的实际列,并发现以下内容:

grid.panel.columns[grid.getSelectionModel().getCurrentPosition().column]
别忘了申请:

    selType : 'cellmodel'

到您的网格,以确保您可以选择单元格

使用beforeedit侦听器和context.record获取所需的行

this.editing = Ext.create('Ext.grid.plugin.CellEditing', {
        clicksToEdit: 1,
        listeners: {
            beforeedit: function (obj) {
                var MyColumnValue = obj.context.record.get('YourColumnName');
                 // or maybe to clear the value of this cell
                 obj.context.record.set('YourColumnName', null);
        }
      }
 });

你用过cellselectionmodel吗?是的,我用的是cellselectionmodel我不在工作了,所以我不能尝试。。。作为一种解决方法,我所做的是“误用”select事件,并将单元格和列存储在自己的变量中。是的,这也是我的第一个想法,直到我通读了源代码并想出了上述方法!