私が正確にやろうとしているのは、フォームがModalboxオブジェクト内にロードされたときに、script.aculo.usオートコンプリートがフォームに対して機能するようにすることです。
もちろん、フォームをスタンドアロンとしてロードするときにオートコンプリートを試しましたが、期待どおりに機能します。参考までに、機能をロードするJSコードは次のとおりです。
Event.observe(window, 'load', function() {
new Ajax.Autocompleter("gl_name", "autocomplete_choices", "<? echo WEB_ROOT . $page_name; ?>?action=ajax_autocomplete", {
paramName: "value",
minChars: 2,
indicator: 'indicator1',
afterUpdateElement: getSelectionIdGL
});
});
次に、HTMLの本文の最後に表示されるオートコンプリートのdivとインジケーターがあります。
<span id="indicator1" style="display: none">
<img src="/images/spinner.gif" alt="Working..." />
</span>
<div id="autocomplete_choices" class="autocomplete"></div>
また、evalScriptsでModalbox()を呼び出しました:true。
だから私は基本的に私の問題がどこにあるかを知っています:フォームのロードでオートコンプリーターを作成したいのですが、スクリプトが書かれたときに「ウィンドウ」オブジェクトは基本的に呼び出しページと同じウィンドウであるため、すでにロードされています。
とは言うものの、正直なところ、実際にトリガーされる可能性のあるイベントはわかりません。それが実際に可能かどうかさえわかりませんが、確かに可能だと思います。
だから..それについてです。他に何を追加すればよいかわかりません。私の問題について何か説明が必要な場合は、遠慮なく。