2017-04-26 13 views
0

私はSharepoint環境でSlickGridを使用してデータを表示および更新しています。読み込み時間を節約するために、前回の行(50行以上の表を含む)でのみ使用されていたオプションを使用してオートコンプリートフィールドにデータを入力してから、ユーザーに "オートコンプリートフィールドの上部にある「メタデータのリフレッシュボタン」をクリックして、オートコンプリートフィールドを再投入するためのすべての使用可能なオプションを取得します。彼ら以来から選択するグリッドを再レンダリングせずにslickgridオートコンプリートフィールドを更新する

<table><tr><td>[ TextField ] </td><td>[ AutoComplete1 ] </td><td>[ AutoComplete2]</td></tr> 
 
<tr><td>Entry1</td><td>Hello</td><td>Goodbye</td></tr> 
 
<tr><td>Entry2</td><td>Hi</td><td>Later</td></tr> 
 
</table>

ユーザーが新しい行を作成することでした、のであれば、彼らは列2のこんにちは、こんにちはの選択肢を持つことになり、以降の列3でさようならか以前使用されていた。彼らはオプション "雹!" 2列目に表示するには、列2の「更新メタデータ」ボタンをクリックする必要があります。このボタンを押すと、その列のすべてのセルが利用可能ですが以前は使用されなかった選択肢がすべて更新されます。

私はそれが理想的ではないことを知っていますが、それは私に与えられた要件です。

私はボタンを列ヘッダーに追加する方法を知っていて、グリッドがオートコンプリート列に必要なデータの配列を更新していますが、グリッド全体を再描画せずに列の選択肢を更新する方法は失われています。

提案がありますか?

答えて

1

は私のレポで新しい例をチェックアウト:https://github.com/6pac/SlickGrid/wiki/Examples

は、これはおそらくあなたが望むものに最も近い: http://6pac.github.io/SlickGrid/examples/example-autocomplete-editor.html

は、私が過去に行ったことはにセルノードのデータプロパティを作成しています

$jqacContainer.data('queryautocomplete', jqac); 

次のように、オブジェクトをセルノードから取得するのは簡単です。 ただし、メモリリークを回避するためにプロパティを適切にクリーンアップする必要があります。これはeditor.destroy()で行うことができるはずですが、私はコーナーケースをチェックしたとは思いません。たとえば、エディタをオフスクリーンでスクロールして完成させるなどです。

関連する問題