繁体   English   中英

回发后在js中分配的隐藏值丢失

[英]Hidden value assigned in js lost after postback

这是我的问题。 我有一个隐藏字段,我通过 javascript 方法更改其值。 问题是回发后价值丢失。

回发后如何保持该值?

谢谢!

.aspx 文件

<asp:HiddenField ID="HiddenField1" runat="server" />
<asp:Button ID="BtnGuardar" runat="server" OnClick="BtnGuardar_Click" OnClientClick="return GridUpdateInfoOK()" />

.js 文件

document.getElementById('<%= HiddenField1.ClientID %>').value = 'TEST';

.aspx.cs 文件

protected void BtnGuardar_Click(object sender, EventArgs e)
{
    String test = HiddenField1.Value;
}

您不需要在服务器上运行隐藏的输入。 你可以做:

<input type="hidden" id="HiddenInput" name="HiddenInput" value="" />

然后,当您回帖时,您可以像这样访问它:

protected void BtnGuardar_Click(object sender, EventArgs e)
{
    String test = Request.Form["HiddenInput"];
}

那样不行。 自 PageLoad 以来该值不存在,因此不会被回发。 尝试使用带有 style="display:none" 的 TextBox。

请用

<asp:HiddenField ID="HiddenField1" runat="server" EnableViewState="true"/>

然后我们将得到回发后的值。

HiddenField 的所有属性如下:

<asp:HiddenField
    EnableTheming="True|False"
    EnableViewState="True|False"
    ID="string"
    OnDataBinding="DataBinding event handler"
    OnDisposed="Disposed event handler"
    OnInit="Init event handler"
    OnLoad="Load event handler"
    OnPreRender="PreRender event handler"
    OnUnload="Unload event handler"
    OnValueChanged="ValueChanged event handler"
    runat="server"
    SkinID="string"
    Value="string"
    Visible="True|False"
/>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM