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

回到另一个基于Web的问题。

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

我使用的是.Net 4.0

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

任何想法都会很棒。 TA!

首先, MaintainScrollPositionOnPostback="true"在asp.net 2.0中有一个已知错误,请参见此处 。

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

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

编辑:

我想我理解你的问题,它是关注元素的,它可以使用一些javascripts工作区来完成, 在这里 。

希望有所帮助。