ボタンをクリックするとその機能を使用できるように、ExtJS 6 panel.grid の rowIndex を知るためにウィジェット列にボタンが必要です。その情報をレンダラー関数から取得できることはわかっていますが、それはボタンが作成される前に実行されるようです。インデックスを取得する方法についてのアイデアはありますか?
6396 次
3 に答える
1
onWidgetAttach を使用する
ウィジェットがレコードにアタッチされたときに呼び出される関数。これは、後処理を行うのに役立つ場合があります。
http://docs.sencha.com/extjs/5.1.2/api/Ext.grid.column.Widget.html#cfg-onWidgetAttach
この関数には、ウィジェットとレコードの両方のパラメーターがあります。widget.record = record を実行すると、クリック リスナーでアクセスできるレコード メンバーがボタンに含まれます。
于 2016-11-09T14:17:40.840 に答える
1
ドレイクの答えに基づいて、event.record
代わりにプロパティを使用しています。残念ながら、クリック イベントにわずかなバッファを持たせる必要があるようです。そのため、適切なレコードが追加されます。これは機能しますが、それが適切な方法であるかどうかは完全にはわかりません。 例:
{
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))
}
}
}
}
于 2016-01-28T19:30:04.327 に答える