C# 回发asp.net后隐藏变量没有值
我有以下几点C# 回发asp.net后隐藏变量没有值,c#,asp.net,C#,Asp.net,我有以下几点 <input type="hidden" id="hdnField" name="hdnField"/> Request.Form.Set("hdnField", x.ToString()); Request.Form.Set(“hdnField”,x.ToString()); 返回页面后,该值不存在 我是新来的,任何帮助都将不胜感激。 您可以在页面类中定义属性,然后在代码中修改属性值: protected string HiddenFieldValue
<input type="hidden" id="hdnField" name="hdnField"/>
Request.Form.Set("hdnField", x.ToString());
Request.Form.Set(“hdnField”,x.ToString());
返回页面后,该值不存在
我是新来的,任何帮助都将不胜感激。
您可以在页面类中定义属性,然后在代码中修改属性值:
protected string HiddenFieldValue { get; set; }
protected void Page_Load(object sender, EventArgs e)
{
if (IsPostBack)
HiddenFieldValue = x.ToString();
else
HiddenFieldValue = x.ToString();
}
然后像这样定义隐藏表单字段,以便将其值设置为属性值:
<input type='hidden' id='hdnField' value='<%=HiddenFieldValue %>' />
如果只想在回发或非回发期间设置属性的值,还可以添加条件:
<input type='hidden' id='hdnField' value='<% if(IsPostBack) { %> <%=HiddenFieldValue%> <% } %>' />
您应该使用asp提供的
asp:HiddenField
标记,而不是使用基本的HTML输入
<asp:HiddenField ID="hdnField" Value="" runat="server" ClientIDMode="Static" />
使用它,您可以使用
hdnField.value在c#中读取和写入值,使用$(“#hdnField”).val()在jQuery中读取和写入值。这是可行的,但hdnField是用户控件的一部分,是aspx页面的一部分,因此来回的值正在消失,在这种情况下是否有保留该值的建议