将值设置为隐藏输入

时间:2013-02-22 12:55:17

标签: c# javascript asp.net

谁能告诉我我做错了什么。 hiddenvalue始终保持为null,不分配任何值。

以下是代码;

Javacript

这适用于地图上的点击事件

var str = "ryan";
document.getElementById("hiddenvalue").value = str;

这是来自asp.net

<div>
    <input id="hiddenvalue" type="hidden" value="" runat="server"/>
    <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
</div>

这就是我从代码隐藏中引用它的方式:

using (NpgsqlCommand cmd = new NpgsqlCommand("insert into altitude select nextval('altitude_id_seq'), :value", conn)) {
    cmd.Parameters.Add(new NpgsqlParameter("value", NpgsqlDbType.Varchar));
    cmd.Parameters[0].Value = hiddenvalue.Value; 
    cmd.ExecuteNonQuery();
}

由于某种原因,没有设定任何价值。任何人都可以指导,因为我已经花了好几个小时试图调试这个问题。

1 个答案:

答案 0 :(得分:1)

如果您可以访问后面的hiddenvalue代码,那么它是服务器端控件,您需要在Javascript中使用ClientID访问它

document.getElementById("<%= hiddenvalue.ClientID %>").value = str;

或者您可以hiddenvalue

分享ClientIDMode Enumeration (静态)