将Javascript变量传递给C#代码隐藏

将Javascript变量传递给C#代码隐藏,c#,javascript,asp.net,C#,Javascript,Asp.net,如何从javascript到C#代码隐藏获取价值?我对下面的代码有一个想法。在javascript代码中,我想用字符串值分配“HiddenField”控件的值,然后从代码隐藏中的“HiddenField”中获取该值。但是有了这个代码我就做不到了。你能告诉我怎么做吗 <script> $(function () { document.getElementById('HiddenField').value = "active"; console.l

如何从javascript到C#代码隐藏获取价值?我对下面的代码有一个想法。在javascript代码中,我想用字符串值分配“HiddenField”控件的值,然后从代码隐藏中的“HiddenField”中获取该值。但是有了这个代码我就做不到了。你能告诉我怎么做吗

<script>
    $(function () {
        document.getElementById('HiddenField').value = "active";
        console.log(<%= this.HiddenField.Value %>)
    });
</script>
<asp:HiddenField ID="HiddenField" runat="server" Value="5" Visible="true" />

$(函数(){
document.getElementById('HiddenField')。value=“active”;
console.log()
});

您需要使用控件的
ClientID
属性来获取DOM中的实际元素ID

<script>
        $(function () {
                document.getElementById('<%= HiddenField.ClientID%>').value = "active";
                console.log(document.getElementById('<%= HiddenField.ClientID%>').value)
        });
</script>

<asp:HiddenField ID="HiddenField" runat="server" Value="5" Visible="true" />

$(函数(){
document.getElementById(“”).value=“活动”;
console.log(document.getElementById(“”).value)
});

然后在调用控制器时通过javascript函数将隐藏值作为变量发送

当然有效

干杯
Phani*

您可以看看mshtml 据我所知,您使用javascript代码中的C函数调用;-)

使用ASP.NET生成的HTML标记

document.getElementById('<%= HiddenField.ClientID%>').value = "active";
document.getElementById(“”).value=“活动”;
当Web服务器控件呈现为HTML元素时,id HTML元素的属性设置为ClientID的值 财产。ClientID值通常用于访问HTML元素 在客户端脚本中使用document.getElementById方法


成功了。这是将javascript变量传递给C#?或
ClientIDMode=“Static”
的首选方法。如果您正在从客户端更新某些逻辑上的值,则这是首选方法。@Champ如Stefan所述,如果您将ClientIDMode用于Static,则不需要ClientID,但此属性在asp.net 4.0或更高版本中可用。