Автозаполнение пользовательского интерфейса JQuery (1.8) прокрутка

у меня проблемы с настройкой модуля автозаполнения JQuery-UI. Мне нужно, чтобы, когда количество данных для выбора было достаточно большим, отображалась полоса прокрутки.

Это то, что я пробовал:

  • в jquery-ui-1.8.16.css я установил это:
ui.autocomplete{
    max-height: 100px;
    overflow-y: auto;
    overflow-x: hidden;
}

*как показано в примере UI-documentation

Вот как я объявляю и автозаполняю ввод:

$("#myInput").autocomplete({
    source: mySource,
    minLength: 0,
});

Я не знаю, почему полоса прокрутки не появляется, любая помощь будет оценена по достоинству. Большое тебе спасибо!


person Andreu Ramos    schedule 14.02.2012    source источник


Ответы (1)


Вы должны переопределить настройку css на странице, подобную этой

<style>
.ui-autocomplete {
    max-height: 100px;
    overflow-y: auto;
    /* prevent horizontal scrollbar */
    overflow-x: hidden;
    /* add padding to account for vertical scrollbar */
    padding-right: 20px;
}
/* IE 6 doesn't support max-height
 * we use height instead, but this forces the menu to always be this tall
 */
* html .ui-autocomplete {
    height: 100px;
}
</style>

вместо изменения значений в jquery-ui-1.8.16.css

person Nicola Peluchetti    schedule 14.02.2012
comment
Это работает, но в моих тестах полоса прокрутки отображается всегда, а не только тогда, когда высота автозаполнения превышает max-height. Однако я не смог найти быстрого решения для этого. - person jamix; 12.12.2013