3

現在、オートコンプリートの結果ボックスは、入力ボックスの左端に配置され、指定した幅だけ右に向かって広がっています。ただし、私のビジネス要件は、結果が切り取られ、水平スクロールがビューに追加されるため、入力ボックスがページの右側に配置されている場合は、入力ボックスの右端に揃えて逆方向に広げることです。完全な結果。(「jquery-ui.css」を変更しても問題ありません)

誰でもこれを助けることができますか?

4

1 に答える 1

3

jQuery UI の現在のバージョンでは、オートコンプリート ウィジェットに、上記の位置ウィジェットと同じプロパティを持つ、オプション付きの位置オブジェクトを与えることができます。これを使用して、提案リストを好きなように配置できます。

ここを参照してください http://jqueryui.com/demos/autocomplete/#option-position

位置を動的に変更する必要がある場合は、「open」イベントを使用する必要があります

コード例

//Supply a callback function to handle the open event as an init option.
$( ".selector" ).autocomplete({
   open: function(event, ui) { ... }
});
//Bind to the open event by type: autocompleteopen.
$( ".selector" ).bind( "autocompleteopen", function(event, ui) {
  ...
});

それらの中で、自動コンパイルフォームの位置を変更できますcss()

$('.ui-autocomplete').css({ 'left': x + 'px', 'top': y + 'px' });

PS:位置は親のhtml入力フィールドに依存するため、cssのみを使用して達成できるかどうかはわかりません

于 2012-09-21T09:16:24.280 に答える