请求查询字符串在Aspx.页面不工作

本文关键字:工作 Aspx 查询 字符串 请求 | 更新日期: 2023-09-27 18:12:00

希望将查询字符串值设置为aspx页面中的隐藏字段。我的代码如下:

<asp:HiddenField runat="server" ID="hidden" Value='<%= Request.QueryString["id"]%>' />

我知道这可以使用jquery/Javascript &还有服务器端编程。但我想知道为什么它不起作用。获取的隐藏字段值为<%= Request.QueryString["id"]%>,而不是实际值

请求查询字符串在Aspx.页面不工作

问题是您不能将runat=server<%= %>混合。

你可以使用:<%# %>语法,如果你是在一个数据绑定控件,或者你可以调用DataBind()从代码隐藏或内联服务器脚本上的控件。

<asp:HiddenField runat="server" ID="hidden" Value='<%# Request.QueryString["id"]%>' />
protected void Page_Load(object sender, EventArgs e)
{     
        hidden.DataBind();
}

在<%= %>之间编写的代码打算在html标记中使用,因为您在querystring中传递参数,如果您需要将其保存在页面的某个地方,请尝试以下

<div runat="server" style="visibility:hidden;" id="hiddenfield">
  <%=Request.QueryString["id"]%>
</div>

您可以通过hiddenfield到达服务器端的hiddenfield值。