| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 624 人关注过本帖
标题:如何保存页面回传前的位置?
只看楼主 加入收藏
nic
Rank: 2
等 级:新手上路
威 望:4
帖 子:175
专家分:0
注 册:2005-11-1
收藏
 问题点数:0 回复次数:2 
如何保存页面回传前的位置?

如果页面比较长,当页面发生回传(POSTBACK)时总是出现不能恢复到回传前的页面位置,有什么办法可以确保页面回传以后的位置还是原来的位置?
谁能把以下的翻译成VB
防止页面滚动#region 防止页面滚动
private void RetainScrollPosition()
{
StringBuilder saveScrollPosition = new StringBuilder();
StringBuilder setScrollPosition = new StringBuilder();

RegisterHiddenField("__SCROLLPOS", "0");

saveScrollPosition.Append("<script language='javascript'>");
saveScrollPosition.Append("function saveScrollPosition() {");
saveScrollPosition.Append(" document.forms[0].__SCROLLPOS.value = mybody.scrollTop;");
saveScrollPosition.Append("}");
saveScrollPosition.Append("mybody.onscroll=saveScrollPosition;");
saveScrollPosition.Append("</script>");

RegisterStartupScript("saveScroll", saveScrollPosition.ToString());

if (Page.IsPostBack)
{
setScrollPosition.Append("<script language='javascript'>");
setScrollPosition.Append("function setScrollPosition() {");
setScrollPosition.Append(" mybody.scrollTop = " + Request["__SCROLLPOS"]+ ";");
setScrollPosition.Append("}");
setScrollPosition.Append("mybody.onload=setScrollPosition;");
setScrollPosition.Append("</script>");

RegisterStartupScript("setScroll", setScrollPosition.ToString());
}
}
#endregion

[此贴子已经被作者于2006-2-22 17:09:09编辑过]

搜索更多相关主题的帖子: 回传 位置 页面 保存 
2006-02-22 17:02
islet
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:89
帖 子:6548
专家分:0
注 册:2005-1-28
收藏
得分:0 
[CODE]

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Data" %>
<Script Language="C#" Runat="Server">
public void Page_Load(Object src,EventArgs e){
NameValueCollection ServerVariables=Request.ServerVariables;
DataTable dt=new DataTable();
DataRow dr;
dt.Columns.Add(new DataColumn("环境变量",typeof(String)));
dt.Columns.Add(new DataColumn("变量值",typeof(String)));
foreach(String SingleVariable in ServerVariables){
dr=dt.NewRow();
dr[0]=SingleVariable;
dr[1]=ServerVariables[SingleVariable].ToString();
dt.Rows.Add(dr);
}
DataGrid1.DataSource=new DataView(dt);
DataGrid1.DataBind();
}
</Script>
<html>
<head>
<title>获取环境变量</title>
</head>
<body>
<asp:DataGrid id="DataGrid1" Runat="Server" BorderColor="#000000" BorderWidth="1" GridLines="Both" Cellpadding="3" CellSpacing="0" Font-Name="Verdana" Font-Size="9pt" HeaderStyle-BackColor="#aaaadd" AlternatingItemStytle-BackColor="#eeeeee"/>

</body>
</html>

[/CODE]
2006-02-23 07:57
islet
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:89
帖 子:6548
专家分:0
注 册:2005-1-28
收藏
得分:0 
其中包含上一页来源
2006-02-23 07:57
快速回复:如何保存页面回传前的位置?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.029271 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved