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

发布于 2024-11-14 00:42:04 字数 578 浏览 5 评论 0原文

这是我的问题。我有一个隐藏字段,我通过 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;
}

Here's my problem. I have a hidden field whose value I change through a javascript method. The problem is after postback the value is lost.

How can I persist the value after postback?

Thanks!

.aspx File

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

.js file

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

.aspx.cs file

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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

西瑶 2024-11-21 00:42:04

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

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

然后当你回发时你可以像这样访问它:

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

You don't need to have the hidden input run at server. You can do:

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

Then when you post back you can access it like that:

protected void BtnGuardar_Click(object sender, EventArgs e)
{
    String test = Request.Form["HiddenInput"];
}
地狱即天堂 2024-11-21 00:42:04

那不是那样的。该值自 PageLoad 起就不存在,因此不会被回发。尝试使用 style="display:none" 的文本框。

That doesn't work like that. The value is not present since the PageLoad, so won't be postbacked. Try using a TextBox with style="display:none".

雨巷深深 2024-11-21 00:42:04

请使用

<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"
/>

Please use

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

Then we will get the value after postback.

All the properties of HiddenField are as bellow:

<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"
/>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文