• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

如何在asp.net中实现返回上一页的功能

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
方法一:
private void Page_Load(object sender, System.EventArgs e)
        {
            
            ViewState["submittimes"]=Convert.ToInt32(ViewState["submittimes"])+1;
                        if(!Page.IsPostBack)
            {
                ViewState["submittimes"]=1;


            }
        }

页面:
<INPUT type="button" value="Button" onclick='history.go(-<%= (int)ViewState["submittimes"] %>)'>  

方法二:
<a href=<%=request.serverVariables("Http_REFERER")%> >
    <asp:image ID="imgcancel"  Visible="false"
    ImageUrl="images/cancel.GIF"
    AlternateText="取消当前操作"  runat="server" />
</a>



方法三:

in one example application of microsoft,(i forgot the name)
using the following method
in Page_Load
if (!IsPostBack)
{
ViewState["UrlReferrer"] = Request.UrlReferrer.ToString();
}

for go back button click
private void btnGoBack_Click(object sender, System.EventArgs e)
{
       Response.Redirect((String) ViewState["UrlReferrer"]);
}

The problem is in some cases, Request.UrlReferrer will be null if you use firewall

方法四:ASP.NET返回上一页并刷新

     最近在做一个网站,要让用户在执行了增加、删除或修改数据的操作后转到另一个页面上显示操作成功,然后再返回原来的页面。最开始用history.go(-1),这样能返回了,但是原来的页面没刷新。因为要返回的页面都不是相同的,所以没法用指定URL的方法来返回,还是要获得上一页的URL才行。看到网上说用Response.redirect(request.servervariables["http_referer"]) 这个可以,就试了下,结果不行。百度了下才知道这个在好多种情况下是无法正常取值的,我是用Response.redirect来转向的,所以request.servervariables["http_referer"]取来的值为空。看来还得再想别的办法,继续百度之,看到有说用Request.UrlReferrer来的。照着搜到的方法一试,终于成功实现返回并刷新了~~

 程序代码
protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            if (Request.UrlReferrer != null)
                ViewState["UrlReferrer"] = Request.UrlReferrer.ToString();
        }
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        Response.Redirect(ViewState["UrlReferrer"].ToString());
    }

最后附上Request.ServerVariables取值的一些说明
下列情况是从浏览器的地址栏正常取得Request.ServerVariables("HTTP_REFERER")的:

1.直接用<a href>
2.用Submit或<input type=image>提交的表单(POSTorGET)
3.使用Jscript提交的表单(POSTorGET)
下面我们再看看Request.ServerVariables("HTTP_REFERER")不能正常取值的情况:
1.从收藏夹链接
2.单击'主页'或者自定义的地址
3.利用Jscript的location.hreforlocation.replace()
4.在浏览器直接输入地址
5.<%Response.Redirect%>
6.<%Response.AddHeader%>或<meta http-equiv=refresh>转向
7.用XML加载地址


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
asp.net正则表达式发布时间:2022-07-10
下一篇:
Asp.NetMVC中DropDownListFor的用法(转)发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap