AutoCompleteExtender неправильно позиционирует меню при прокрутке - PullRequest
2 голосов
/ 07 июня 2010

У нас есть AutoCompleteExtender, связанный с TextBox.Оба элемента управления размещены внутри UpdatePanel, а UpdatePanel отображается в виде всплывающего диалога с использованием библиотеки Javascript (Ext.BasicDialog).

Всплывающее окно - это элемент div на странице, а не отдельное окно.Проблема в том, что когда пользователь прокручивает внутри всплывающего окна, AutoCompleteExtender показывает свое меню в неправильном месте.Похоже, что он берет видимое расстояние от верхней части всплывающего окна и позиционирует меню из верхней части внутреннего HTML всплывающего окна (которое не видно)

Мы используем версию 1.0.20229.20821 изAjaxControlToolkit, и мы нацеливаемся на ASP.NET Framework vewrsion 2.0.

Я попытался исправить меню, прикрепив следующий Javascript к событию OnClientShown, но в значительной степени он делает то же самое:

function resetPosition(object, args) {

    var tb = object._element; // tb is the associated textbox.
    var offset = $('#' + tb.id).offset();

    var ex = object._completionListElement;
    if (ex) {
        $('#' + ex.id).offset(offset);
    }  
} 

Ответы [ 3 ]

5 голосов
/ 18 ноября 2010

Я исправил это, установив position:relative для div, содержащего TextBox и расширитель автозаполнения. Расширитель, должно быть, использовал неправильный элемент для позиционирования внутри всплывающей панели.

4 голосов
/ 30 октября 2012

Добавить пустой элемент <div id="AutoCompleteContainer"></div> сразу после AutoCompleteExtender. В AutoCompleteExtender добавьте атрибут, указывающий на этот контейнер, CompletionListElementID="AutoCompleteContainer". Элементы списка должны содержаться в этом элементе div.

0 голосов
/ 28 апреля 2015

Я знаю, что это старый пост, но думал, что эта информация может помочь кому-то еще. Существует более новая версия 15.x Ajaxtoolkit (апрель 2015 г.), и она решает эту проблему. Из моего прочтения некоторое время назад свойство CompletionListElementID устарело и, по крайней мере, в разных версиях ведет себя по-разному. Я обновил свои ссылки до версии 15.x, и она только начала работать по мере необходимости.

...