将javascript变量传递给Codebehind

将javascript变量传递给Codebehind,javascript,asp.net,vb.net,Javascript,Asp.net,Vb.net,是否可以从javascript变量中获取值并将其用于visual basic代码中,而无需在任何控件上增加值。如果没有服务器控件的帮助,您无法从codebehind访问js变量。 您可以将页面重定向到自身,并将该值作为URL参数传递(window.location.href=window.location.href+“?value=test”;)。但我认为这不是你想要的,因为它会强制回发。 因此,最好的方法是使用hiddenfield: 在javascript函数中: <script ty

是否可以从javascript变量中获取值并将其用于visual basic代码中,而无需在任何控件上增加值。

如果没有服务器控件的帮助,您无法从codebehind访问js变量。 您可以将页面重定向到自身,并将该值作为URL参数传递(
window.location.href=window.location.href+“?value=test”;
)。但我认为这不是你想要的,因为它会强制回发。 因此,最好的方法是使用hiddenfield:

在javascript函数中:

<script type="text/javascript">
    function Foo(){
        var hidden=document.getElementById('hidValue');
        hidden.value="test";
    }
</script>

如果可能(可用),尝试在java中将值赋给document.cookie=javavalue,然后从codebehind var x=document.cookie(通过webbrowser或page)获取该值。

这取决于您想要获取javascript变量的情况。要在单击按钮后获取它吗?
<Input id="hidValue" type="hidden" runat="server" />
Protected hidValue As HtmlControls.HtmlInputHidden

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    Dim hiddenValue = hidValue.Value
End Sub