Extjs4 在操作列上停止双击操作

Extjs4 在操作列上停止双击操作,extjs4,extjs4.1,Extjs4,Extjs4.1,我在ExtJS4.1.1中有一个网格面板。对于其他列,我有一个actioncolumn(xtype:'actioncolumn')。我在该列中包含一个处理程序。当我点击它时,它工作正常,打开一个新窗口,加载了很多东西。但我在双击那个专栏时出错了。提前欢迎任何帮助 { text : 'Signature', menuDisabled : true, sortable : false, id

我在ExtJS4.1.1中有一个网格面板。对于其他列,我有一个actioncolumn(xtype:'actioncolumn')。我在该列中包含一个处理程序。当我点击它时,它工作正常,打开一个新窗口,加载了很多东西。但我在双击那个专栏时出错了。提前欢迎任何帮助

{
        text            : 'Signature',
        menuDisabled    : true,
        sortable        : false,
        id              : 'signature',
        xtype           : 'actioncolumn',            
        width           : 60,            
        items           : [{
            icon        : "${resource(dir: 'images', file: 'ADD01003.png')}",
            tooltip     : 'Add Signature',
            scope       : this,
            handler     : function(grid, rowIndex, colIndex) {
                var records = grid.getStore().getAt(rowIndex).data,
                  fullName    = records.fullName,
                  nickName    = records.nickName,
                  salutation  = grid.getStore().getAt(rowIndex).raw.m00i012001.name,
                  searchValue = records.id ;

                  var filters    = new Array();
                  var store =Ext.data.StoreManager.lookup('S02X004001');
                  store.clearFilter(); 
                  filters.push({property:'member', value:searchValue});
                  store.loadPage(1, {
                      filters  : filters,
                      callback : function(records, options, success) {
                      var view = Ext.widget('v02x004001');
                      view.show();
                      Ext.getCmp('fullName-sv02x00400104').setValue(fullName);
                      Ext.getCmp('nickName-sv02x00400104').setValue(nickName);                      
                      Ext.getCmp('member-sv02x00400104').setValue(searchValue);
                      Ext.getCmp('salutation-sv02x00400104').setValue(salutation);
                      }
                  });
            }
        }]
    }

不是为了复活任何僵尸,但是对于任何在ExtJS 4、5或6中有相同问题的人来说,这个解决方法应该可以工作(可能需要稍微修改类名,粘贴的代码在5.1.1中被证明可以工作)

诀窍是不修改actioncolumn,而是修复itemdblclick事件处理程序,就像这样:

listeners:
{
    itemdblclick: function(v, record, item, index, e)
    {
        var flyTarget = Ext.fly(e.target);
        if(flyTarget.hasCls('x-action-col-icon') || flyTarget.hasCls('x-grid-cell-inner-action-col'))
        {
            e.stopEvent();
            return;
        }
        //your code here
    }
}

请张贴您的错误