方案一:javascript方案:(此方案若用在服务端控件上不能实现跳转,因为服务端控件在跳转前会回发一次,就改变了document.referrer的值)
<img ID="imgCancel" alt="" src="images/login_07.gif" onclick="GoPre()" />
在图片按钮上加上一个js方法GoPre()
js代码:
<script type="text/javascript">
function GoPre() {
window.location.href = document.referrer; //使用document.referrer
}
</script>
方案二:asp.net后台处理方案:(我这里使用imageButton控件)
<asp:ImageButton ID="imgBtnCancel" runat="server" ImageUrl="images/login_07.gif"
OnClick="imgBtnCancel_Click"/>
步骤一:在 Page_Load方法中获取Request.UrlReferrer,并保存在viewState里面
if (Request.UrlReferrer != null)
{
ViewState["urlPre"] = Request.UrlReferrer;
}
步骤二:设置按钮的点击事件OnClick
protected void imgBtnCancel_Click(object sender, ImageClickEventArgs e)
{
Response.Redirect(ViewState["urlPre"].ToString());
}
小结:以上两种都可实现跳转回前一页的功能,为了减轻服务端压力,一般优先使用客户端跳转,即js解决方案。