将QueryString值指定为隐藏字段值

时间:2013-09-23 09:25:37

标签: c# asp.net webforms

就像询问最好的方法一样。我正在检索aspx页面中的查询字符串值,并且我想将此值指定为隐藏输入字段的值。

<%int productId = 0;
  if (Request.QueryString["productId"] != "" && Request.QueryString["productId"] != null)
  {
      productId = Convert.ToInt32(Request.QueryString["productId"]);

  } %>
<input type="hidden" id="hiddenProdIdEditProduct" value=<% productId %> />

目前我收到编译错误。

2 个答案:

答案 0 :(得分:2)

您可以简单地使用,为什么需要将其转换为int

<input type="hidden" id="hiddenProdIdEditProduct" value='<% Request.QueryString["productId"] %>' />

您的value可能不是int类型。

或使用TryParse

<%
   int productId = 0;
   Int32.TryParse(Request.QueryString["productId"], out productId);
%>
<input type="hidden" id="hiddenProdIdEditProduct" value='<% productId %>' />

答案 1 :(得分:1)

不需要在ASP.NET aspx页面中直接使用此逻辑。

在服务器端分配,例如在Page_Load事件中。

int productId = 0;
if (Request.QueryString["productId"] != "" && Request.QueryString["productId"] != null)
{
  productId = Convert.ToInt32(Request.QueryString["productId"]);
}

hiddenProdidEditProduct.Text = productId;