高分相送:在页面提交时,怎样恢复竖型滚动条的位置?

XXSingle 2003-08-11 03:31:40
页面数据多,点击底层的数据刷新后,滚动条却跑到的顶部,烦啊;
怎么样才能让它恢复到原来的位置?高分相送高分相送。。。问题得到
解决,马上给分...............在线等待
...全文
55 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
gzxchaoren 2010-06-04
  • 打赏
  • 举报
回复
好贴,好贴,顶下
snowman163254 2003-11-03
  • 打赏
  • 举报
回复
好贴,解决了我的问题
yewei4u 2003-08-13
  • 打赏
  • 举报
回复
偶就是这样用的,能够实现的!
yewei4u 2003-08-13
  • 打赏
  • 举报
回复
to XXSingle(水连天):
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 = thebody.scrollTop;");
saveScrollPosition.Append("}");
saveScrollPosition.Append("thebody.onscroll=saveScrollPosition;");
saveScrollPosition.Append("</script>");

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

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

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

private void Page_Load(object sender, System.EventArgs e)
{
RetainScrollPosition();
}
SuperMark 2003-08-12
  • 打赏
  • 举报
回复
如果你用了样式表或重设了样式,用SmartNavigation页面PostBack后这些样式将无效,所以字体会变化。
一个简单的解决办法是将以前样式表的内容放到Head中
XXSingle 2003-08-12
  • 打赏
  • 举报
回复
非常感激楼上各位高手,程序功能已经实现,将 SmartNavigation 属性设置为 true
时,却产生了一个新问题:
程序设计时字体是:宋9,当IE窗体刷新时,字体无故变大(估计宋11)
字体不变时,IE布局也能看到有所改变,这是什么回事啊?

如果分数不够,还可加分...........!!!!
elfzzf 2003-08-12
  • 打赏
  • 举报
回复
如果你将 SmartNavigation 属性设置为 true
你不能写 Response.Write("<script type=text/javascript>close();</script>"); 语句
改成
Dim scriptString As String = "<script language='javascript'>window.close();</script>"
If (Not IsClientScriptBlockRegistered("clientScript")) Then
RegisterClientScriptBlock("clientScript", scriptString)
End If
XXSingle 2003-08-12
  • 打赏
  • 举报
回复
问题还没解决,还请各位高手相助啊.................
XXSingle 2003-08-11
  • 打赏
  • 举报
回复
再经改进,把string saveScrollPosition,setScrollPosition;
改成:
System.Text.StringBuilder saveScrollPosition=new System.Text.StringBuilder();
System.Text.StringBuilder setScrollPosition=new System.Text.StringBuilder();

改setScrollPosition= 或 setScrollPosition+=
改成
setScrollPosition.Append();
就与yewei4u(yewei) 的代码相符了,但还是出错,估计javascript那出错呢?
XXSingle 2003-08-11
  • 打赏
  • 举报
回复
复:yewei4u(yewei)
我把你的VB代码转成C# 代码应该是:

string saveScrollPosition,setScrollPosition;
RegisterHiddenField("__SCROLLPOS", "0");

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

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

if (Page.IsPostBack)
{
setScrollPosition="<script language='javascript'>";
setScrollPosition+="function setScrollPosition() {";
setScrollPosition+=" thebody.scrollTop =' & Request('__SCROLLPOS') & ';";
setScrollPosition+="}";
setScrollPosition+="thebody.onload=setScrollPosition;";
setScrollPosition+="</script>";
RegisterStartupScript("setScroll", setScrollPosition.ToString());
}
编译通过,但执行时有错,不知那有错,请yewei4u(yewei) 及各位高手再帮帮忙吧
xrll 2003-08-11
  • 打赏
  • 举报
回复
http://www.dotnetjunkies.com/Tutorial/ShowContent.aspx?cg=6292ABC5-A1BC-48A6-AE96-530E6AF9052D&ForumID=4242
XXSingle 2003-08-11
  • 打赏
  • 举报
回复
回:mynewpc(水中日月)
且IE窗体字体无故变大,这是什么回事?
XXSingle 2003-08-11
  • 打赏
  • 举报
回复
回:mynewpc(水中日月)
如果我把SmartNavigation 属性设置为 true,我的关闭窗体语句将无法运行:
Response.Write("<script type=text/javascript>close();</script>");

将怎么办呢?

VB俺不懂,各位同仁最好用C#代码,谢谢..........
yewei4u 2003-08-11
  • 打赏
  • 举报
回复

Private Sub RetainScrollPosition()

Dim saveScrollPosition As New StringBuilder
Dim setScrollPosition As New StringBuilder

RegisterHiddenField("__SCROLLPOS", "0")

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

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

If (Page.IsPostBack = True) Then

setScrollPosition.Append("<script language='javascript'>")
setScrollPosition.Append("function setScrollPosition() {")
setScrollPosition.Append(" thebody.scrollTop = " & Request("__SCROLLPOS") & ";")
setScrollPosition.Append("}")
setScrollPosition.Append("thebody.onload=setScrollPosition;")
setScrollPosition.Append("</script>")

RegisterStartupScript("setScroll", setScrollPosition.ToString())

End If

End Sub

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
RetainScrollPosition()
End Sub
牛牛Alex 2003-08-11
  • 打赏
  • 举报
回复
gz
dongchuanlu 2003-08-11
  • 打赏
  • 举报
回复
在需要的地方加一个书签<a name="bookmark1">

进入该页aaa.aspx#bookmark1
这样可以直接到你需要的地方
mynewpc 2003-08-11
  • 打赏
  • 举报
回复
在 .aspx 文件的 @ Page 指令中将 SmartNavigation 属性设置为 true

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧