在回发时维护滚动位置和选定控件

时间:2012-01-16 12:30:06

标签: c# asp.net postback

回到另一个基于网络的问题。

当控件向服务器发出回发时,页面刷新(精细)。该页面也会滚动回到顶部并失去所选的控件。如果它在回发之后相关,取决于发生了什么变化,控制变得可见或隐藏。即使在页面可见性方面没有任何改变,焦点也会丢失并且当前滚动重置。保留在文本字段中输入的数据,以及任何单选按钮/复选框选择。问题是tabbing被重置为索引0并且页面滚动被发送回页面顶部。

我正在使用.Net 4.0

我尝试在asp页面本身和web.config中添加MaintainScrollPositionOnPostback =“true”无效。 我已尝试使用和不使用Ajax updatepanel使用条件更新触发关闭文本框文本更改或radiobuttons更改并且回发仍然导致滚动和索引丢失。

任何想法都会很棒。的Ta!

1 个答案:

答案 0 :(得分:3)

首先,MaintainScrollPositionOnPostback="true"在asp.net 2.0中有一个已知错误,请参阅here

此外,正确的语法是maintainScrollPositionOnPostback。 (小写m)

我使用maintainScrollPositionOnPostback但在IE中有很多问题,然后我使用asp.net AJAX Control Toolkit UpdatePanel,它解决了问题(页面不滚动到顶部)并节省一些带宽。

编辑:

我认为我理解你的问题,它是关注元素的,它可以使用一些javascripts工作区来完成,se here

希望有所帮助。