我们有一个链接到 TextBox 的 AutoCompleteExtender。这两个控件都放置在 UpdatePanel 中,UpdatePanel 使用 Javascript 库 (Ext.BasicDialog) 显示为弹出对话框。
弹出窗口是页面上的一个 div,而不是一个单独的窗口。问题是当用户在弹出窗口内滚动时,AutoCompleteExtender 将其菜单显示在错误的位置。看起来它正在从弹出窗口顶部获取可见距离,并将菜单从弹出窗口的内部 html 顶部定位(不可见)
我们正在使用 AjaxControlToolkit 的 1.0.20229.20821 版本,并且我们的目标是 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);
}
}