asp.net 返回上一页的实现方法小集

方法一:

在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("对不起,当前是最前页码“);

}

方法四:

在button的onClick事件中输入

this.RegisterClientScriptBlock("e", "<script language=javascript>history.go(-2);</script>");

方法五:

<a href=<%=request.servervariable("http_Referre)%>

<asp:image /></a>