返回当前会话的上一页

时间:2016-06-24 03:23:10

标签: javascript c# asp.net

如何在详细页面中设置后退按钮以引用用户查看的上一页(订单页面列表)。 在我的情况下,我有三个页面使用查询字符串来获取页面(订单页面列表)。

订单页面列表中的

aspx.cs文件:

d3.csv("?action=makeCSV&param1=val1&param2=val2")...

在详细信息页面中,我有一个按钮,用户可以在他们查看的上一页上单击以返回。例如,如果他们看到确认的订单列表并单击其中一个订单以查看详细信息,则在详细信息页面上单击后退按钮,然后他们应该返回到已确认的订单列表页面。挂单列表页面和拒绝订单列表页面也是如此。 如何在列表订单页面或详细信息页面中设置我的情况以及我需要设置的后退按钮功能?

2 个答案:

答案 0 :(得分:0)

当用户单击详细信息页面时,使用Session对象保存同一页面的URL。当他/她回按钮时,呼叫将转到服务器,您可以从会话中获取URL并重定向到同一页面。

protected void pending(object sender, EventArgs e)
{

    Response.Redirect("OrderHistory.aspx?order=pending", true);
    Session["ReturnURL"] = "OrderHistory.aspx?order=pending";
}

protected void confirmed(object sender, EventArgs e)
{

    Response.Redirect("OrderHistory.aspx?order=confirmed", true);
    Session["ReturnURL"] = "OrderHistory.aspx?order=confirmed";
}
protected void rejected(object sender, EventArgs e)
{
    Response.Redirect("OrderHistory.aspx?order=rejected", true);
    Session["ReturnURL"] = "OrderHistory.aspx?order=rejected";
}

所以在OrderHistory.aspx.cs代码隐藏页面上有Back按钮的事件处理程序,如

 protected void btnReturnBack_Click(object sender,EventArgs e)
 {
      //Code for whatever you want to done here
      if(Session["ReturnURL"] != null)
      {
           Response.Redirect(Convert.ToString(Session["ReturnURL"]), true);
      }
 }

希望这会解决您的疑问。

答案 1 :(得分:0)

在后退按钮的详细页面中,我使用下面的代码:

protected void btnBack_Click(object sender, EventArgs e)
    {
        string URL;
        URL = "OrderHistory.aspx?order="+Convert.ToString(Session["ReturnURL"]);
        Response.Redirect(URL);

    }

在页面加载的列表顺序页面中:

protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {

            BindOrderList(Request.QueryString["order"]);



            Session["ReturnURL"] = Request.QueryString["order"];


        }


    }