从网格中获取值

时间:2013-10-02 10:52:24

标签: extjs

我在我的网格中添加了一个动作列,我试图在推送时获得一个网格值。

这是我的动作栏:

xtype: 'actioncolumn',
width: 30,
sortable: false,
menuDisabled: true,
items: [{
    icon: 'images/refresh16x16.png',
    scope: this,
    handler: this.onBidHistoryGridlClick
}

这是我的倾听者:

onBidHistoryGridlClick: function(record, grid, rowIndex){
    alert(grid.getStore().getAt(rowIndex).column_name);
}

这不起作用。

pic

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

您已经在侦听器参数中获得了记录,请使用它!

record.get('column_name')

你可能已经接近了自己的尝试,但是你忘了你从商店得到的是一个记录,而不是一个原始的数据对象。所以这应该是:

grid.getStore().getAt(rowIndex).get('column_name')

<强>更新

您的处理程序参数错误(请查看docs)。这应该是:

onBidHistoryGridlClick: function(view, rowIndex, colIndex, item, e, record){
    alert(record.get('column_name'));
}

答案 1 :(得分:0)

除了@ rixo的回答,您可能需要使用&#34;数据&#34;属性取决于上下文(事件处理程序回调函数):

                handler: function (grid, rowIndex, colIndex) {
                    var rec = grid.getStore().getAt(rowIndex).data;
                    alert(rec.toSource());  // this only works in Mozilla Firefox
                    var rec_col_val = grid.getStore().getAt(rowIndex).data.col_name;
                    alert(rec_col_val);