繁体   English   中英

从网格获取单元格的值,而无需使用选择模型

[英]Get value of a cell from grid without using selection model

我想从网格中检索单元格的值,同时单击该行中的任何单元格。
我没有在网格中使用复选框选择模型。 对于未使用复选框模型的网格,我找不到任何解决方案。
我正在尝试使用以下方式检索值,但我收到的是“未定义”。

    listeners: {'cellclick': {fn: function(grid, cellIndex, rowIndex, columnIndex, value, e) {
                                   alert("grid "+grid+" rowIndex "+rowIndex+" columnIndex "+columnIndex+" e "+e+" cellIndex "+cellIndex);
                                   alert("record "+cellIndex.data);
                                   record = grid.getStore().getAt(rowIndex);
                                   cellvalue = record.get(colname);
                             }//funtion

在上面的代码中, cellIndex.data是未定义的。 我也尝试了cellIndex.value和其他各种可能性。
例如,我想要的是,当我单击一行的第五列时,我想检索同一行第一列上的单元格值。 如何实现呢?

看起来您的侦听器方法签名不正确。 对于Ext JS 4.2,cellclick事件的处理程序采用以下参数:

this, td, cellIndex, record, tr, rowIndex, e, eOpts

http://docs.sencha.com/extjs/4.2.2/#!/api/Ext.grid.Panel-event-cellclick

获得正确的签名后,您会注意到cellclick事件还传递了record ,该record是绑定到cellclick事件发生所在行的模型实例。 您应该能够使用它轻松地从模型实例中的任何字段检索值,而不必先从商店中单独查找记录……您已经拥有了它。

另外,请务必注意参数的数据类型。 例如, cellIndex是数字,而不是对象。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM