我正在使用 ASP.NET,在向导控件中,我有单选按钮,如果选择“是”,则会显示一个面板,但如果选择“否”,则隐藏面板。我将 MaintainScrollPositionOnPostBack 设置为 True,尽管 ActiveStepChanged 事件将其更改为 False,因此当您单击“下一步”查看下一个向导步骤时,它将从页面顶部开始。问题是,在单击“下一步”后,第一次单击单选按钮时,它会跳到页面顶部(第一次单击单选按钮后,页面将保持其位置)。我如何阻止它第一次跳跃?
问问题
9127 次
3 回答
4
设置Page.MaintainScrollPositionOnPostBack = true
为在 Postback 上保持当前屏幕位置。
这比尝试通过 JavaScript 或其他任何方式自己做这件事要容易。
于 2010-12-15T22:37:45.870 回答
2
您可以通过将控件放在UpdatePanel中来阻止页面进行完全刷新
于 2010-12-15T22:25:43.447 回答
1
我知道这已经得到解答,但是我无法在我正在从事的项目中使用 ajax 我遇到了类似的问题,我找到了一个可以接受的解决方法。我在一个也有母版页的页面中有一个用户控件。在用户控件中有一个输入表单,在底部附近有一些触发回发的控件。母版页上的主要内容 div 使其可滚动(因为它太大)。我找到的解决方案是将页面焦点设置为对 c# 代码隐藏中回发触发的事件的控件。例如:
protected void cbShip_CheckedChanged(object sender, EventArgs e)
{
if (cbShip.Checked)
{
pnlShip.Visible = true;
Page.SetFocus(ddlShipCountry);
}
else
{
pnlShip.Visible = false;
}
return;
}
于 2011-09-07T18:32:01.763 回答