使用 c# 获取加载隐藏字段值
本文关键字:字段 隐藏 加载 获取 使用 | 更新日期: 2023-09-27 18:31:24
我使用以下代码将值分配给隐藏控件。但是在代码隐藏中,我无法获取隐藏控件的值。请帮我得到这个。我尝试了更多的时间。
Script
=======
<script type="text/javascript">
function load_value() {
var val = document.getElementById('<%= hf_xml.ClientID %>');
val.value= "hai";//Whatever i want
alert(val.value);//alert message show with text hai
}
window.onload = load_value;
</script>
<asp:HiddenField ID="hf_xml" runat="server" />
Code Behind
===========
protected void Page_Load(object sender, EventArgs e)
{
string value = hf_xml.Value;//Always Empty
}
您的代码中没有任何真正缺失/不正确的内容。尝试了解发生的事件的顺序。
Window.Onload
预计在页面完成加载时执行。而Page_Load
预计将更早调用,因为页面仍在处理中。
这确实正在发生。使用调试符号进行验证时,首先调用Page_Load
,稍后将调用window.onload
方法。这就是您的HiddenField
显示空值的原因。
此外,正如预期的那样,第一次请求页面时,隐藏字段值将为空,但在下次回发时,将为此隐藏字段设置值。
你不应该在input
控件上使用innerHTML
请改用value
var val = document.getElementById('<%= hf_xml.ClientID %>');
val.value = "hai";//Whatever i want
您是否试图在发布到服务器之前获取该值? 表示在发布到服务器之前无法访问该值(表示单击按钮或某些服务器端事件)
在窗体上放置一个 ASP:按钮,并在单击按钮后检查值