当前位置: 首页 > 图文教程 > 网络编程 > ASP > 使用Session记录页面地址和实现页面返回功能

ASP
隐藏ASP木马后门的两种方法
一段asp防注入的通用脚本
十万条Access数据表分页的两个解决方法
asp下让数据库在需要读取的时候才打开
ASP代码实现自动清除替换ACCESS(MDB)数据库的日文字符的
原来ASP和PHP都是可以删除自身的
[原创]asp获取URL参数的几种方法分析总结
asp+javascript实现404页的处理转换
ASP+模板生成Word、Excel、html的代码
天枫常用的ASP函数封装如下
asp获取当前文件名的代码
ASP把长的数字用逗号隔开显示的代码
防止网页后退 asp禁止缓存
ASP的一些自定义函数整理
ASP个人网站与动网整合非官方方法
Access模糊查询查不到数据的解决方法
asp源码打包成xml的工具
透彻掌握ASP分页技术很详细的分析
asp下根据标题生成关键字的代码
asp取日期1月25日为0125的最简单方法

ASP 中的 使用Session记录页面地址和实现页面返回功能


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 189 ::
收藏到网摘: n/a

 

    在开发过程中为了满足客户的要求要实现这样一个功能:在A页面内点击一个文字连接后进入C页面,在点击返回按钮后可以返回A页面,而在B页面也有该文字连接,点击后进入C页面,返回时则返回B页面(C页面内只能有一个返回按钮).为此想到了使用Session功能,就是向C页面跳转时记录下是从哪个页面跳过来的,然后点击返回按钮时对session的内容进行判断,从而决定是返回A页面还是B页面.

  首先在A,B两个页面内要加入取得页面路径的代码

  string url=Request.CurrentExecutionFilePath.ToString();

//获得当前页面的虚拟路径

    Session[“URL”]=url;

  Response.Redirect("C.aspx",true);

在C页面内首先通过session获得上个页面的虚拟路径

string url=Session["URL"].ToString();

由于A.B两个页面的虚拟路径前半部分相同,实际上我们只要判断是“A.aspx”还是“B.aspx”就行了.因此先借助split方法取得我们想要的页面名称,然后可以将名称赋给一个label,在页面内隐藏掉这个label(此处是否需要使用Lable来保存页面名称可以根据情况而定).

string[] split=url.Split(new char[] {'/'});

int n=split.Length;

string pathname=split[n-1];

Label1.Text=pathname;

最后在返回按钮的响应事件中进行判断,决定返回哪个页面:

if (Label1.Text=="A.aspx")

           Response.Redirect("A.aspx",true);

         else

           Response.Redirect("B.aspx",true);