[英]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.