0

我有一个包含几列、ajax 存储等的网格......还有一个自定义复选框列:

{
        xtype: 'checkcolumn',
        dataIndex:'checkData',
        header: 'Column with checkbox',                                
        listeners:{
            beforecheckchange:function(mthis,rowIndex,checked,eOpts){
                //here I'd like to check something like this:
                //if(currentRowData.OtherColumn == 1){
                //    return true;
                //}else{
                //    return false;
                //}                     
            }
        },
        editor: {                    
            xtype: 'checkbox',
            cls: 'x-grid-checkheader-editor'
        }
    }

如何在此事件中获取当前行数据?我试过: grid.getSelectionModel().getSelection() 但它是未定义的......

4

3 回答 3

0

我认为您可能会将其与 CheckBoxModel 选择器混淆: http ://docs.sencha.com/extjs/4.1.3/#!/api/Ext.selection.CheckboxModel

于 2013-04-23T03:54:08.627 回答
0

我不得不使用这种结构:

rowData = gridStore.getAt(rowIndex).getData();

或者

rowData = gridStore.getAt(rowIndex).data;

(最好的变种是什么?)

于 2013-04-23T07:40:53.963 回答
0

尝试:

beforecheckchange : function(mthis,rowIndex,checked,eOpts){
var rec = your_grid.getStore().getAt(rowIndex);
if(rec.get('OtherColumn') == 1){
    return true;
}else{
    return false;
}                     
}
于 2013-05-04T16:23:20.823 回答