隐藏变量在回发后没有值
本文关键字:变量 隐藏 | 更新日期: 2023-09-27 18:08:39
我有以下内容
<input type="hidden" id="hdnField" name="hdnField"/>
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" />
使用这个,你可以在c#中使用hdnField.Value
和在jQuery中使用$('#hdnField').val()
来读写值。