0

在 cs.aspx 页面中,我有一个带有以下代码的按钮:

protected void Button1_Click(object sender, EventArgs e)
{
    Response.Redirect("~/cs.aspx?p=ali#25");
}

在 page_load 我得到查询字符串并显示它:

protected void Page_Load(object sender, EventArgs e)
{
    if (Request.QueryString["p"] != null)
    {
        string p = Request.QueryString["p"];
        Response.Write("p= "+p);
    }
}

在查询字符串中:

p  = ali#25 

但在运行时显示

p = ali

为什么 # 后面的字符串没有显示。

4

1 回答 1

1

找到了解决办法。使用 Server.UrlEncode

Response.Redirect("~/cs.aspx?pass="+Server.UrlEncode("a#25"));
于 2013-10-25T08:26:33.607 回答