Dylan Verheul、Dan G. Switzer、Anjesh Tuladhar、Jörn Zaefferer による jquery autocomplete 1.0.2 拡張機能を使用しています。オートコンプリート コントロール内から .show() および .hide() が呼び出されたときに、独自のコールバック関数を実行しようとしています。コールバック関数を実際に認識する方法が見つかりませんでした。誰かがこのコントロールに精通していて、助けてくれるなら、私は大いに感謝しています.
7995 次
1 に答える
8
申し訳ありませんが、あなたの質問に対する簡単な答えはありません。プラグインのソースコードを確認しましたが、必要なメカニズムが見つかりませんでした。このプラグインを希望どおりに機能させるには、自分でプラグインを更新する必要があると思います。
options
コールバックをパラメーターに追加してから、プラグインにこれらのコールバックを使用させるという考え方です。まず、プラグインコードを変更する必要があります。オートコンプリートコントロールの表示/非表示を担当するクラスを作成する関数に移動します。
$.Autocompleter.Select = function (options, input, select, config) {
show()
下にスクロールすると、この関数がandhide()
メソッドを持つオブジェクトを返すことがわかります。次のコードを追加できます。
hide: function() {
...
options.showCallback && options.showCallback(); // Invoke callback function if set
},
...
show: function() {
...
options.hideCallback && options.hideCallback(); // Invoke callback function if set
},
最後に、オートコンプリートを作成するときに、オプションにコールバックを追加する必要があります。
$("#myTextBox").autocomplete("http://...",
{
showCallback : function() { /* do what you want here */ },
hideCallback : function() { /* do what you want here */ }
});
まったくテストされていませんが、それはただの迅速で汚い解決策です。これがお役に立てば幸いです。
于 2009-03-04T16:01:44.137 に答える