2

グリッドのセルを取得し、プログラムで cellclick イベントを発生させたい。どうすれば実装できますか?これまでのところ、このようなセルのdom要素を取得することに成功しています

var cell = pos.view.getCellByPosition(newPos);

しかし、次のコードを実行すると

cell.fireEvent('click');

Extコンポーネントではないため、エラーが発生します。Dom Element から Ext Component を取得する方法はありますか。Dom 要素には ID がありますが、使用 Ext.getCmp(cell.id); しても何も返されません。

4

2 に答える 2

4

グリッド セルには ExtJS コンポーネントによる表現がないため、イベントを発生させることはできません。セル DOM 要素 ( http://jehiah.cz/a/firing-javascript-events-properly ) の DOM イベントを手動で起動するか、Ext.grid.View コンポーネントの itemclick イベントを起動することができます。

于 2013-01-18T08:10:19.327 に答える
0

cellclick イベントは、実際には、セル自体ではなく、基になるビューから発生します。

したがって、次のイベントを発生させてみてください。

pos.view.fireEvent("cellclick")

cellclick は以下を提供する必要があるため、不足しているパラメーターを入力する必要があります。

cellclick( Ext.view.Table this, HTMLElement td, Number cellIndex,
           Ext.data.Model record, HTMLElement tr, Number rowIndex,
           Ext.EventObject e, Object eOpts )
于 2013-01-18T08:10:12.743 に答える