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 相关文章推荐
Javascript remove 自定义数组删除方法
Oct 20 Javascript
JavaScript中的类继承
Nov 25 Javascript
Javascript中的for in循环和hasOwnProperty结合使用
Jun 05 Javascript
JS字符串拼接在ie中都报错的解决方法
Mar 27 Javascript
原生javascript实现图片无缝滚动效果
Feb 12 Javascript
js数组操作方法总结(必看篇)
Nov 22 Javascript
jQuery实现两个select控件的互移操作
Dec 22 Javascript
JQueryEasyUI框架下的combobox的取值和绑定的方法
Jan 22 Javascript
CSS3+JavaScript实现翻页幻灯片效果
Jun 28 Javascript
SpringBoot+Vue前后端分离,使用SpringSecurity完美处理权限问题的解决方法
Jan 09 Javascript
使用淘宝镜像cnpm安装Vue.js的图文教程
May 17 Javascript
详解Angular如何正确的操作DOM
Jul 06 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分页时出现的Fatal error的解决方法
2011/04/18 PHP
php实现对两个数组进行减法操作的方法
2015/04/17 PHP
PHP实现二维数组按某列进行排序的方法
2016/11/18 PHP
PHP使用数组实现矩阵数学运算的方法示例
2017/05/29 PHP
thinkphp5框架路由原理与用法详解
2020/02/11 PHP
基于JQuery实现异步刷新的代码(转载)
2011/03/29 Javascript
事件绑定之小测试  onclick &amp;&amp; addEventListener
2011/07/31 Javascript
深入分析原生JavaScript事件
2014/12/29 Javascript
JavaScript电子时钟倒计时第二款
2016/01/10 Javascript
Angular.JS判断复选框checkbox是否选中并实时显示
2016/11/30 Javascript
Bootstrap基本组件学习笔记之分页(12)
2016/12/08 Javascript
jquery dataview数据视图插件使用方法
2016/12/23 Javascript
javascript阻止事件冒泡和浏览器的默认行为
2017/01/21 Javascript
JavaScript实现自动跳转文本功能
2017/05/25 Javascript
Windows下Node.js安装及环境配置方法
2017/09/18 Javascript
微信小程序中this.data与this.setData的区别详解
2018/09/17 Javascript
JS函数动态传递参数的方法分析【基于arguments对象】
2019/06/05 Javascript
Node.js 实现抢票小工具 &amp; 短信通知提醒功能
2019/10/22 Javascript
微信小程序全选多选效果实现代码解析
2020/01/21 Javascript
vue实现图片上传功能
2020/05/28 Javascript
详解在IDEA中将Echarts引入web两种方式(使用js文件和maven的依赖导入)
2020/07/11 Javascript
[57:38]2018DOTA2亚洲邀请赛3月30日 小组赛A组 OpTic VS OG
2018/03/31 DOTA
centos6.7安装python2.7.11的具体方法
2017/01/16 Python
python3.4实现邮件发送功能
2018/05/28 Python
浅析python中numpy包中的argsort函数的使用
2018/08/30 Python
对python中数组的del,remove,pop区别详解
2018/11/07 Python
如何基于线程池提升request模块效率
2020/04/18 Python
利用python下载scihub成文献为PDF操作
2020/07/09 Python
如何利用Python 进行边缘检测
2020/10/14 Python
货代行业个人求职简历的自我评价
2013/10/22 职场文书
九年级科学教学反思
2014/01/29 职场文书
护士毕业生自荐信
2014/02/07 职场文书
勤俭节约主题班会
2015/08/13 职场文书
《一面五星红旗》教学反思
2016/02/23 职场文书
写给医护人员的一封感谢信
2019/09/16 职场文书
用 Python 元类的特性实现 ORM 框架
2021/05/19 Python