使用 http 定位点和参数的响应重定向会导致参数丢失
本文关键字:参数 重定向 定位 http 使用 响应 | 更新日期: 2023-09-27 18:33:39
我试图让用户编辑一些数据,在页面中向下,当他发布它们时,允许他返回到页面上的同一点。上述点标有良好的 HTMLAnchor:
<a name="point_in_page">
当用户发布数据时,我触发响应重定向到同一页面:
Response.Redirect("Tickets.aspx#point_in_page");
但这会导致参数丢失。所以我尝试将其作为查询字符串传递:
Response.Redirect("Tickets.aspx#point_in_page?IDTicket='"" + IDTicket + "'"",false);
但是我无法通过以下方式恢复参数:
string IDTicket = Request.QueryString["IDTicket"];
有什么办法可以做到这一点吗?(如果我重定向到没有锚点的 url,我可以恢复它,很难)。
谢谢!
重新排序查询字符串和哈希组件,查询字符串应排在第一位。
服务器将忽略哈希之后的所有内容,因为它仅供客户端使用。
话虽如此,这应该有效:
Response.Redirect("Tickets.aspx?IDTicket='"" + IDTicket + "'"#point_in_page",false);
如果您在查询字符串之前在 url 中使用哈希组件,则会导致错误。因此,您需要重新排列数据,即首先添加查询字符串值。
Response.Redirect("Tickets.aspx?IDTicket='"" + IDTicket + "'"#point_in_page",false);