作者maucho (毛手毛脚)
看板C_Sharp
标题Re: [问题] 急问asp.net的问题!!!(按下button网页뜠…
时间Wed Aug 15 07:25:10 2007
※ 引述《james025070 ()》之铭言:
: 我在网页上使用了一个asp.net的button元件
: ____________
: | |
: | |
: | |
: | | -> (左边那个箭头是button)
: | |
: ------------
: listbox
: 现在按下那个button我想要把左边listbox中的文字带到textbox去
: 但是每带一笔 网页就会refresh一次 ie卷轴又跑到最上方
: 而我又要滚着滑鼠滚轮往下往下往下 才能在选一个listbox 点button
: 请问如何实做
: 按下那button时候 网页scrollbar不要动呢??
: 谢谢 急问 希望有人可以解答我长久以来asp.net的疑问
基本上只要有postback,这问题真的很难解
您可以试试以下这段程式
//在Page_Load呼叫这个副程式,而且在html中将 body 的 id 命名为 thebody。
private void RetainScrollPosition()
{
System.Text.StringBuilder saveScrollPosition = new System.Text.StringBuilder()
;
System.Text.StringBuilder setScrollPosition = new System.Text.StringBuilder();
Page.RegisterHiddenField("__SCROLLPOS", "0");
saveScrollPosition.Append("<script language='javascript'>");
saveScrollPosition.Append("function saveScrollPosition() {");
saveScrollPosition.Append(" document.forms[0].__SCROLLPOS.value = thebody.s
crollTop;");
saveScrollPosition.Append("}");
saveScrollPosition.Append("thebody.onscroll=saveScrollPosition;");
saveScrollPosition.Append("</script>");
Page.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>");
Page.RegisterStartupScript("setScroll", setScrollPosition.ToString());
}
}
这是我很久以前在 ASP.NET1.0 时所使用的
当初的心得是:有时候有用 有时候没用= =
所以後来就放弃不用了
您的问题还是考虑使用ajax~ 或是花点功夫用javascript在client端解决
--
朝雨浥轻尘
http://maomo.info
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 125.225.179.200