如何在extjs小部件列中获得rowIndex
How to get rowIndex in extjs widget column
我需要一个按钮在一个小部件列知道它的rowIndex在ExtJS 6面板。网格,这样点击按钮就可以使用这个功能。我知道我可以从渲染器函数中提取这些信息,但这似乎是在创建按钮之前执行的。有什么办法可以得到索引吗?
在gridview
上使用indexOf
。您需要将node
作为参数传递给它,这是表示行的HTML元素。在Ext JS 6中,网格行是HTML表,因此按钮的行元素可以从按钮元素b
中找到b.el.up('table')
。gridview
也可以被发现为b.up('gridview')
。所以你得到:
var rowIndex = b.up('gridview').indexOf(b.el.up('table'));
查看实际操作:https://fiddle.sencha.com/#fiddle/snq
基于Drake的回答,我使用event.record
属性代替。不幸的是,看起来您必须让click事件有一个轻微的缓冲区,以便将适当的记录添加到其中。这是有效的,但我不完全确定这是否是一个正确的方法。例子:
{
width: 150,
xtype: 'widgetcolumn',
widget: {
text: 'Button',
xtype: 'button',
text: 'Get row index',
listeners: {
buffer: 1,
click: function(button, event, eOpts) {
var record = event.record;
alert(store.find('postid', record.get('postid'), 0, false, true, true))
}
}
}
}
使用onWidgetAttach
当小部件附加到记录时调用的函数。这对于后期处理可能很有用。
http://docs.sencha.com/extjs/5.1.2/api/Ext.grid.column.Widget.html cfg-onWidgetAttach
函数有小部件和记录参数。你可以做widget。Record = Record,然后按钮将具有您可以在click listener
相关文章:
- ExtJS 5用程序点击actioncolumn gridview
- ExtJS——在展开/折叠时调整面板高度
- 这.SOMETHING 总是返回未定义的 - extjs
- ExtJS网格单元格编辑器,防止焦点松动问题
- 如何将本地json数据加载到Extjs数据模型中
- EXTJS 5树状网格自定义行css
- 使用js或extjs访问对象的java列表
- EXTJS-图表刷新,重绘-如何更新图表
- 类型错误:url未定义extjs 4正在填充组合框
- 事件的ExtJS控制器选择器
- 使用Extjs进行函数定义
- (extjs)获取表单中单选按钮的选定值.不返回该值
- 什么's extjs中的mon()和on()之间的区别
- 文本字段显示它是有效的,即使它在ExtJS中是无效的
- ExtJS 4:编写带有模型关联的嵌套XML
- Extjs、Chrome扩展和内容安全策略
- ExtJS 4 Object.prototype fail
- extjs关闭事件不'不要开火
- 如何在ExtJs中获得将应用于给定类列表的样式
- 如何在extjs小部件列中获得rowIndex