サイトで複数のオートコンプリート ボックスを使用しています。ボックスは動的文字列配列で満たされているため、サーバーは使用していません。すべての情報はローカルです。これが私のコードの一部です:
<script>
var availableMaps = new Array();
var availableLayers = new Array();
var availablePlaces = new Array();
</script>
上記は私のインデックスページの上部にあります
<div class="ui-widget">
<label for="mapTags">Search: </label>
<input id="mapTags">
</div>
上記は私のインデックスページの本文にあります
for(var i = 0; i < mapContainer.length; i++)
{
availableMaps[i] = mapContainer[i].name;
}
$( "#mapTags" ).autocomplete({
source: availableMaps
});
このコードは、ページが読み込まれるとすぐに実行される js 関数内にあります。関数では実行されません$(document).ready
。また、availableMaps 配列が文字列値でいっぱいになることもわかっています。
入力フィールドに文字または単語を入力すると、下矢印を押すと、オートコンプリートが機能しているかのように項目がフィールドに表示されるため、オートコンプリートはわずかに機能します。唯一の問題は、値を選択できる小さなドロップダウン メニューが表示されないことです。したがって、必要なのはドロップダウンメニューを表示することだけです。入力フィールドの下に他のコンテンツがあるため、ドロップダウン メニューが他のコンテンツの背後に隠れている可能性はありますか? ありそうにない。$(document).ready
これを関数に含める必要がありますか?