asp.net下利用js实现返回上一页的实现方法小集


Posted in Javascript onNovember 24, 2009

方法一:
在asp.net的aspx里面的源代码中
<input type="button onclick="javascript:window.history.go(-1);"value="返回上一页">
浅析:这个是用了HTML控件,通过一个onclick的事件,调用了javascript中的一个方法就可以了。这个是最简单的了,也同样适用于静态页面,ASP页面等。
方法二:
利用Reponse.write
如果你对ASP有一定的了解,那么对Response.write这个东东就不会陌生了,方法一是直接有HTML页面中实现,则这个则是在后台环境中实现(这个说法好像不是很规范,呵呵)

Response.write("<script language=javascript>history.go(-2);</script>) 
<a href="#" onclick="javascript:history.back();">返回前一页</a>

这里为会么要采用-2的值呢,我个人认为是这样的:因为在asp.net中的页面,当你按下一个button后,由于页面中会实现page.postback的缘故,实际上在这其中是刷新了两次页面,我们要的是第一次的,所以就......

方法三
利用Response.Redirect() 或 server.transfer()

在page_load中加入
if(!IsPostBack)
ViewState["retu"]=Request.UrlReferrer.ToString();
而在在返回按钮事件中
Response.Redirect(ViewState["retu"].ToString());
或Server.Transfer (ViewState["retu"].ToString());

浅析:
Request.UrlReferrer可以获取客户端上次请求的url的有关信息,我们在使用这个的时候最好对其进行一个判断
if(ViewState["UrlReferrer"]!=null)
Response.Redirect(ViewState["UrlReferrer"].ToString();
else
{
Response.write("对不起,当前是最前页码“);

这样才好使一点点喔
}
在使用Request.UrlReferrer时还要注意:
1. 如果上一页面使用document.location方法导航到当前页面,Request.UrlReferrer返回空值
2. 如果有A,B两个页面,在浏览器中直接请求A页面,在A页面的中Page_Load事件中导航到B 页面,则 Request.UrlReferrer返回空。因为 在Page_load事件中页面还未初始化,所以无法记录当前页的信息,导航到b页面也就无法获得上一页面的信息
3. 点击刷新按钮不会改变Request.UrlReferrer

方法四:
这个方法估计很少人用,不过我试了一下,也还很不错喔
在button的onClick事件中输入
this.RegisterClientScriptBlock("e", "<script language=javascript>history.go(-2);</script>");
一样可以 返回到上一页

方法五

<a href=<%=request.servervariable("http_Referre)%> 
<asp:image id="imageback" visible = true" imagurl="上一页" runat="server"/></a>

方法六
Response.Write("<script>alert('提示信息');history.back()</script>"); 
Response.Write("<script>alert('提示信息');top.location.href='" + PageURL + "'</script>") 
Response.Write("<script>alert('提示信息');window.location.href='" + PageURL + "'</script>"); 
Response.Write("<script>alert('提示信息');window.location=window.location;</script>");

这里还要??乱幌掠?avascript来实现与用Response.redirect()来实现的一点点区别,如果你是用天表单的时候想保留你填的数据,那就要用history.go();这个东东,如果你只是直接返回不用做任何操作,你就可以用reponse.redirect()了.
Javascript 相关文章推荐
一些不错的js函数ajax
Aug 20 Javascript
jQuery 隔行换色 支持键盘上下键,按Enter选定值
Aug 02 Javascript
Json对象替换字符串占位符实现代码
Nov 17 Javascript
jQuery之折叠面板的深入解析
Jun 19 Javascript
javascript包装对象实例分析
Mar 27 Javascript
JQuery页面随滚动条动态加载效果的简单实现(推荐)
Feb 08 Javascript
JS 设置Cookie 有效期 检测cookie
Jun 15 Javascript
Taro集成Redux快速上手的方法示例
Jun 21 Javascript
JavaScript执行环境及作用域链实例分析
Aug 01 Javascript
ng-events类似ionic中Events的angular全局事件
Sep 05 Javascript
webpack打包html里面img后src为“[object Module]”问题
Dec 22 Javascript
vue 实现把路由单独分离出来
Aug 13 Javascript
dropdownlist之间的互相联动实现(显示与隐藏)
Nov 24 #Javascript
根据鼠标的位置动态的控制层的位置
Nov 24 #Javascript
js cookies实现简单统计访问次数
Nov 24 #Javascript
js获取图片长和宽度的代码
Nov 24 #Javascript
写出更好的JavaScript程序之undefined篇(中)
Nov 23 #Javascript
通过身份证号得到出生日期和性别的js代码
Nov 23 #Javascript
javascript 在网页中的运用(asp.net)
Nov 23 #Javascript
You might like
一个简单的php加密解密函数(动态加密)
2013/06/19 PHP
php可应用于面包屑导航的递归寻找家谱树实现方法
2015/02/02 PHP
php控制文件下载速度的方法
2015/03/24 PHP
用PHP去掉文件头的Unicode签名(BOM)方法
2017/06/22 PHP
yii2 url重写并隐藏index.php方法
2018/12/10 PHP
javascript GUID生成器实现代码
2009/10/31 Javascript
在线一元二次方程计算器实例(方程计算器在线计算)
2013/12/22 Javascript
Javascript验证用户输入URL地址是否为空及格式是否正确
2014/10/09 Javascript
JS简单操作select和dropdownlist实例
2014/11/26 Javascript
尝试动手制作javascript放大镜效果
2015/12/25 Javascript
Javascript中的迭代、归并方法详解
2016/06/14 Javascript
jQuery 更改checkbox的状态,无效的解决方法
2016/07/22 Javascript
数据结构中的各种排序方法小结(JS实现)
2016/07/23 Javascript
js获取时间函数及扩展函数的方法
2016/10/30 Javascript
JS判断鼠标进入容器的方向与window.open新窗口被拦截的问题
2016/12/23 Javascript
ES6新特性四:变量的解构赋值实例
2017/04/21 Javascript
在angular 6中使用 less 的实例代码
2018/05/13 Javascript
详解vue中的父子传值双向绑定及数据更新问题
2019/06/13 Javascript
Element Rate 评分的使用方法
2020/07/27 Javascript
vue或react项目生产环境去掉console.log的操作
2020/09/02 Javascript
python3使用pyqt5制作一个超简单浏览器的实例
2017/10/19 Python
python中set()函数简介及实例解析
2018/01/09 Python
用python编写第一个IDA插件的实例
2018/05/29 Python
Python正则表达式匹配日期与时间的方法
2019/07/07 Python
python读取指定字节长度的文本方法
2019/08/27 Python
详解pycharm自动import所需的库的操作方法
2020/11/30 Python
浅谈matplotlib默认字体设置探索
2021/02/03 Python
vivo智能手机官方商城:vivo
2016/09/22 全球购物
京东全球售:直邮香港,澳门,台湾,美国,澳大利亚等地区
2017/09/24 全球购物
荷兰家电销售网站:Welhof
2020/12/08 全球购物
测试驱动开发的主要步骤是什么
2014/12/10 面试题
法学专业毕业生自荐信范文
2013/12/18 职场文书
六五普法宣传标语
2014/10/06 职场文书
员工家属慰问信
2015/03/24 职场文书
MySQL 存储过程的优缺点分析
2021/05/20 MySQL
Java 异步任务计算FutureTask
2022/04/28 Java/Android