Ext.grid.Panel点击时获取行列的各种数据

EXTJS中的Ext.grid.Panel点击时获取行列和当前点击单元格数据,所有代码均已测试。
创建一个gridpanel的方式如下

gridAVS = Ext.create('Ext.grid.Panel', {
                        id: 'av_Grid',
                        store: avStore,
                        columnLines: true,
                        columns: girdColumns,
                        listeners: {
                            cellclick: function (grid, rowIndex, columnIndex, e) {
                                var fileName = grid.getHeaderAtIndex(columnIndex).dataIndex;//列名
                                var data = e.get(fileName);//单元格value
                                var list = ['1', '2', '3', '4', '5', '6', '7', '8', 'S', 'Q'];
                                if (list.indexOf(data) >= 0) {
                                    var flightdataNum = grid.getHeaderAtIndex(0).dataIndex;//当前行的第一列列名
                                    var segmentNum = grid.getHeaderAtIndex(1).dataIndex;
                                    var flightNONum = grid.getHeaderAtIndex(2).dataIndex;
                                    var flightDate = e.get(flightdataNum);//当前行的第一列列值
                                    var segment = e.get(segmentNum);
                                    var flightNO = e.get(flightNONum);
                                    updateData(fileName, flightDate, segment, flightNO, data);
                                }
                            }
                        }
                    });

cellclick代表当前单元格点击时的事件,grid代表整个表格,rowIndex,columnIndex顾名思义代表行和列的行数,这其中
grid.getHeaderAtIndex(columnIndex).dataIndex;//获取当前点击单元格的列的列名。
var data = e.get(fileName);//当前点击的单元格的value值
var flightdataNum = grid.getHeaderAtIndex(0).dataIndex;//当前行的第一列列名
var flightDate = e.get(flightdataNum);//当前行的第一列列值

你可能感兴趣的:(ExtJs)