ASP.NET 中的返回按钮的实现history

其实要实现这个功能主要还是要用到javascript
方法一:  在asp.net的aspx里面的源代码中 <input type="button onclick="javascript:window.history.go(-1);"value=" 返回上一页">
浅析:这个是用了HTML控件,通过一个onclick的事件,调用了javascript中的一个方法就可以了。这个是最简单的了,也同样适用于静态页 面,ASP页面等。

go(-1): 返回上一页, 原页面表单中的内容会丢失; back(-1): 返回上一页, 原页表表单中的内容会保留.

history.back(0) 刷新history.back(1) 前进history.back(-1) 后退

功能相当于浏览器上面的前进后退按钮同理,history.back(-3) 表示后退三个URL记录

history.back() - 与在浏览器点击后退按钮相同

history.forward() - 与在浏览器中点击按钮向前相同

方法二:
利用Reponse.write 如果你对ASP有一定的了解,那么对Response.write这个东东就不会陌生了,方法一是直接有HTML页面中实现,则这个则是在后台环境中实现 
Response.write("<script language=javascript>history.go(-2);</script>)
<a   href="http://blog.163.com/happy_2010_zyj/blog/#"   onclick="javascript:history.back();"& gt;返回前一页</a>
这里为会么要采用-2的值呢,我个人认为是这样的:因为在asp.net中的页面,当你按下一个button后,由于页面中会实现 page.postback的缘故,实际上在这其中是刷新了两次页面,我们要的是第一次的,所以就......
 方法三:
这个方法估计很少人用,不过我试了一下,也还很不错喔
在button的onClick事件中输入
this.RegisterClientScriptBlock("e", "<script language=javascript>history.go(-2);</script>");
一样可以 返回到上一页

History对象描述
History 对象包含用户(在浏览器窗口中)访问过的 URL。
History 对象是 window 对象的一部分,可通过 window.history 属性对其进行访问。
History 对象属性
length 返回浏览器历史列表中的 URL 数量
History 对象方法
back() 加载 history 列表中的前一个 URL。
forward() 加载 history 列表中的下一个 URL。
go() 加载 history 列表中的某个具体页面。History 对象描述
History 对象最初设计来表示窗口的浏览历史。但出于隐私方面的原因,History 对象不再允许脚本访问已经访问过的实际 URL。唯一保持使用的功能只有 back()、forward() 和 go() 方法。

相关链接:http://blog.sina.com.cn/s/blog_40e1ba640100ilk0.html
 文章链接:http://blog.163.com/happy_2010_zyj/blog/static/151148756201061314736170/

posted @ 2014-07-27 20:27  花影疏帘  阅读(603)  评论(0)    收藏  举报