jcvegan
jcvegan

Reputation: 3170

Pass javascript variable to Codebehind

Is it posible to get a value from a javascript variable and use it into visual basic code without incrusting value on any control.

Upvotes: 3

Views: 13779

Answers (2)

user3285528
user3285528

Reputation:

if possible (is available) try to assign value in java to document.cookie = javavalue and then get it from codebehind var x= document.cookie (either via webbrowser or page)

Upvotes: 0

Tim Schmelter
Tim Schmelter

Reputation: 460098

You cannot access a js-variable from codebehind without any help of a server-control. You could redirect the page to itself and pass that value as URL-Parameter(window.location.href = window.location.href + "?value=test";). But i assume that this is not what you want because it forces a postback. So the best way is to use a hiddenfield:

In javascript function:

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

On aspx:

<Input id="hidValue" type="hidden" runat="server" />

In code behind

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

Upvotes: 9

Related Questions