質問

SlickGridで標準のjQueryイベントを使用する方法はありますか?例えば。

grid = new Grid($("#myGrid"), data, columns, options);
grid.blur(function(){}); // this would be nice

// this will let me add jQuery events to the whole grid, but 
// I lose the cell position/data
$("#myGrid").blur(function(){}); 

前もって感謝します!

役に立ちましたか?

解決

短い答えはノーです。

詳しく説明するために、SlickGridはjQueryプラグインではなく、何らかの形でjQueryを拡張しません。フードの下でjQueryを使用する別のコンポーネントです。グリッドインスタンスにイベントハンドラーを設定することで、購読できるイベントを明示的に定義しています。その間 いくつか 「標準」イベントのうち、グリッドによって生成されたDOMノードに適用されると、それらの使用は落胆します。ノードは、スクロール時にSlickGridによって作成および削除されているため、同じままであるか、イベントに頼ることはできません。 SlickGridの内部を十分に理解していない限り、明示的に定義されたイベントに固執することをお勧めします。

当初、私はjqueryイベントを使用するためにSlickgridの変更を検討しましたが、それに反対しました。 JQueryをSlickGridのフレームワークとして使用することを選択しましたが、ユーザーにもそれを学習して使用するように強制する必要はありません。これにより、後で別のフレームワークに切り替える柔軟性が得られます。

他のヒント

レンダリングされたコードを常に調べて、作成したコンテナに.blur()を適用できます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top