使用 extJS 从网格面板中获取价值
Posted
技术标签:
【中文标题】使用 extJS 从网格面板中获取价值【英文标题】:get value from gridpanel with extJS 【发布时间】:2015-02-03 14:48:18 【问题描述】:我有一个带有一些行的网格面板。如果您双击该行,我想在警报中显示 código 值。
只有通过这些代码,我才能从我双击的单元格中获取值(如果我单击“tipo”,我会得到“final”或“borrador”,但不是codigo
值)
这是我的听众:
listeners:
'rowdblclick': function (view, record, tr, columnIndex, e)
var cell = e.getTarget('.x-grid-cell-inner');
if (!cell)
return;
alert(cell.innerhtml)
,
我尝试使用此代码但仍然失败(null)
'rowdblclick': function(view, rowIndex, colIndex, item, e, record)
alert(grid.getStore().getAt(rowIndex).get('codigo'));
'rowdblclick': function(view, rowIndex, colIndex, item, e, record)
alert(record.get('codigo'));
我需要从您双击的行中获取codigo
值吗?
提前谢谢你。
【问题讨论】:
【参考方案1】:对于未来,最好指出您使用的是哪个 Ext JS 版本。仅从您的代码中就完全不明显。
也就是说,4.x 行中的 Views 没有 rowdblclick
事件,因此它必须是 3.x 或 5.x。我假设它是 5.x。
您的代码不起作用的原因是您的事件处理程序在第二个和第三个 sn-ps 中期望的参数错误。第一个有正确的签名,所以你应该使用它:
listeners:
// You don't have to declare all arguments, just those you need
rowdblclick: function(view, record)
var codigo = record.get('codigo');
alert('Codigo: ' + codigo);
要获取数据,您永远不会在行和单元格中戳。行和单元格仅表示绑定到 Grid 的 Store 中包含的数据。上面的事件处理程序接收被单击行的record
对象,并且该记录包含该行的数据值。
【讨论】:
谢谢你,实际上我使用的是 ExtJS5。现在它完美地工作了。以上是关于使用 extJS 从网格面板中获取价值的主要内容,如果未能解决你的问题,请参考以下文章