グリッドパネルにXTemplateセルの列があります。この特定の列のすべてのセルに適用されるクリックイベント/リスナーを追加するにはどうすればよいですか?私がこれまでに試したことはありますが、グリッド内のANYセルのすべてのクリックに適用されます。私はデリゲートオプションを操作して、特定のクラスの要素をフィルタリングすることはできません。グリッド内のXTemplate要素のクラスにイベントリスナーを追加する
これまでの私のコード:
グリッドパネルにXTemplateセルの列があります。この特定の列のすべてのセルに適用されるクリックイベント/リスナーを追加するにはどうすればよいですか?私がこれまでに試したことはありますが、グリッド内のANYセルのすべてのクリックに適用されます。私はデリゲートオプションを操作して、特定のクラスの要素をフィルタリングすることはできません。グリッド内のXTemplate要素のクラスにイベントリスナーを追加する
これまでの私のコード:
感謝をすべての返信のために、しかし、私はこのソリューションを経由して私の問題を解決するために管理してきました:Ext JS on click event
おそらくcellmodel
にあなたのグリッドのselTypeを変更する必要があります。その後、グリッドビューのセルチックを聞くことができるはずです。これは文書化されていないようですが、Ext.util.Obersvable.capture(Ext.getCmp('my-grid-id'), console.log)
を使用して見つかりました。これは知っておくと非常に便利なトリックです。
AFAIK、delegate
は、DOM要素(コンポーネントではない)にハンドラを割り当てる場合にのみ機能します。代わりにこのコードを試してみてください。
initComponent: function() {
this.mon(this.el, 'click', this.storeCheckboxVal, this, { delegate: '.approveCheckbox' });
},