0

我有以下站点结构。这是.net 3.5。

母版页 -> 内容页 -> 模态弹出扩展器 -> 用户控件 -> 面板 -> 更新面板 -> div

div 是所有表单元素所在的位置。现在,当我单击复选框或任何导致回发的按钮时,用户控件从顶部开始。它不保持回滚。我遇到了一篇关于实现下面的脚本的帖子,但这对我没有任何帮助。有解决办法吗?

下面是我使用的脚本。

<script type="text/javascript">
var xPos, yPos;
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_beginRequest(BeginRequestHandler);
prm.add_endRequest(EndRequestHandler);
function BeginRequestHandler(sender, args) {
    xPos = $get('div').scrollLeft;
    yPos = $get('div').scrollTop;
}
function EndRequestHandler(sender, args) {
    $get('div').scrollLeft = xPos;
    $get('div').scrollTop = yPos;
}

4

1 回答 1

0

尝试将此添加到 Javascript 中的 pageLoad 部分,ModalPopupExtenders 具有可用于滚动位置的“add_shown”函数。

function pageLoad() {
var popup = $find('<%=MODALPOPUPEXTENDER.ClientID%>');
popup.add_shown(SetScrollPositionFunction);
}

在您的情况下,SetScrollPositionFunction 将是 EndRequestHandler。

于 2012-09-20T08:11:48.730 回答