1

我有 2 页名称为:

  • Abc.aspx
  • pqr.aspx

现在在Abc.aspx的页面加载上,我正在这样做:

protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (!string.IsNullOrEmpty(Request.QueryString["Alert"]))
                {
                    if (Request.QueryString["Alert"] == "y")
                    {
                      //Here on redirection from Pqr.aspx i will display Javascript alert that your "Your data save"
                    }
                }
                else
                {
                        //Dont do anything
                 }
            }

        }

现在从pqr.aspx页面我重定向到Abc.aspx并在按钮单击时传递查询字符串:

     protected void Save_Click(object sender, EventArgs e)
     {
        //saving my data to database.
        Response.Redirect("~/Abc.aspx?Alert=yes");
     }

但是正在发生的事情是,如果有人在浏览器中输入这样的 url,那么仍然会出现此警报:

http://localhost:19078/Abc.aspx?Alert=yes

然后这个javascript警告框仍然出现。

我想要的是从我的 Pqr.aspx 页面重定向后,只有这个警报应该出现

这该怎么做??

4

1 回答 1

2

Asp.net中有一个名为 . 的对象。使用Request.UrlReferrer此属性,您可以获取上一页,从该页到当前页

protected void Page_Load(object sender, EventArgs e)
{
      if (!IsPostBack)
      {
           if (!string.IsNullOrEmpty(Request.QueryString["Alert"]))
           {
               if (Request.QueryString["Alert"] == "y" && Request.UrlReferrer != null && Request.UrlReferrer.LocalPath == "/pqr.aspx") // if the root is same
               {
                   //Here on redirection from Pqr.aspx i will display Javascript alert that your "Your data save"
               }
               else
               {
                        //Dont do anything
               }
           }
       }
}
于 2015-11-30T07:01:38.077 回答