我有一个带有可滚动面板的.net页面,该面板承载一个日历,该日历在当前月份放置了一个锚点。表单操作
<form id="form1" runat="server" method="post" action="horas_admin.aspx#today">
强制Panel向下滚动以在面板中显示当前月份。但它也会导致面板本身显示在页面顶部(一旦页面内容不适合一页),隐藏放置在面板上方的那些控件。使用JavaScript滚动到页面顶部的任何尝试似乎都被表单操作推翻。
我想要进行的唯一滚动是在Panel中进行的滚动。日历数据由嵌套在面板内的转发器加载。
有什么建议吗?
答案 0 :(得分:0)
我可以通过删除表单操作并用JavaScript String替换它来解决这个问题:
ClientScript.RegisterStartupScript(this.GetType(), "hash", "location.hash = '#today';", true);
该部分在右侧位置滚动面板内容以显示由锚点标记的部分,但也将面板放在页面顶部。为了调整这一点,我将孔页面滚动到页面顶部。
ClientScript.RegisterStartupScript(this.GetType(),"ToTheTop", "ToTopOfPage();", true);
<script type="text/javascript">
function ToTopOfPage() {window.scrollTo(0, 0);}
</script>
两个JavaScript字符串都将在PostBack页面上执行