如何获得网格范围

时间:2016-06-29 06:30:57

标签: javascript extjs extjs3

我正在一个刑法中创建一个网格。现在我想访问这个网格,为此我正在编写一个函数。 就是这样。

function getGrid(obj, store){
debugger;
}

这里obj是网格,商店是商店。 但我不知道在哪里写。如何获得正确的范围。

我的商店和网格代码是

initComponent:function(){
            var myData = [       
                            ['FFPE Slide',2,'eSample'],
                            ['Plasma',2,'eSample'],
                            ['Whole Blood',2,'eSample']
                        ];   

                            // create the data store
            var myStor = new Ext.data.ArrayStore({
                        fields: [
                            {name: 'Stu'},
                            {name: 'Sub'},
                            {name: 'Excl'}
                            ]
                         });

                {
                    xtype: 'panel',
                    region:"east",
                    header:true,
                    collapsible:true,
                    autoScroll:true,
                    width:"30%",
                    hideBorders:true,                   
                    split:true,
                    items: [{
                            xtype:'panel',
                            title:"Panel Header",
                            items:[],
                            id:'East_pan',
                            tbar: this.desToolbar
                        },{
                            xtype:'panel',
                            title:"Result",
                            items:[{
                                    xtype :'grid',
                                    id: 'COHART_GRID',
                                    selType: 'checkboxmodel',
                                    frame: true,
                                    store: myStor,
                                    autoHeight: true,
                                    stripeRows: true,
                                    columns: [
                                        {
                                        text: 'Study',
                                        id: 'Sd', 
                                        header: 'Study',
                                        width: 130,
                                        sortable: false,
                                        hideable: false,
                                        dataIndex: 'Stu'
                                        },
                                        {
                                        text: 'Subject',
                                        width: 130,
                                        header: 'Subject',
                                        id:'Sub',
                                        dataIndex: 'Sub',
                                        hidden:false,
                                        },
                                        {
                                        text: 'Exclude',
                                        width: 130,
                                        id:'Ext',
                                        header: 'Exclude',
                                        dataIndex: 'Excl',
                                        hidden:false
                                        }
                                    ]
                                }]

                        }]
                    }
            }

感谢您的帮助!!

2 个答案:

答案 0 :(得分:1)

您可以使用getCmp功能获取网格获得网格后,您可以在其上调用getStore以获取商店

var obj=Ext.getCmp('COHART_GRID');
var store=obj.getStore();

答案 1 :(得分:1)

1)不要使用getCmp()使用组件查询。

2)在网格声明中将id更改为itemID。

                            xtype :'grid',
                            itemId: 'COHART_GRID',
                            selType: 'checkboxmodel',
                            frame: true,
                            store: myStor,
                            autoHeight: true,
                            stripeRows: true,

3)store = Ext.ComponentQuery.query('#COHART_GRID')[0] .getStore()。 4)您可以访问网格并存储在控制器中。