when using javascript to assign text to an <asp:label> how do you then read that value in code behind vb.net

I have spent hours figuring out how to set the text value of a label using javascript but now after that has been achieved I find that the VB code behind still sees the original default value even after it has been rendered on screen.

So is there anyway to send the output of a javascript back to the server? I thought I could do this using a server control but seems I can only change the rendering of that control, the server doesnt know the value changed.

What I am trying to do is retrieve the timezoneoffset value from the client and use that value to determine a selected item in a listbox.

Is this possible?

Any help is appreciated.
JOHNFROGAsked:
Who is Participating?
 
leakim971Connect With a Mentor PluritechnicianCommented:
You may sync the value with an hidden field
0
 
silemoneCommented:
are you using UpdatePanel?
If so, use PageRequestManager (which is javascript).  But with the Sys object, you have more interaction with your java and server controls...
0
 
silemoneCommented:
So since the client isn't refreshing, the server isn't seeing the new values...I would actually just surround the label with an Update Panel (if you only use these on that label, it will not slow down your website) and refresh on a server click, which will be asychronous and will cause only partial page refreshing...
0
Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

 
silemoneConnect With a Mentor Commented:
The other way I was going to suggest would be a hidden field as leakim stated.
0
 
JOHNFROGAuthor Commented:
yes I am using an update panel. I am starting to understand why thats causing a problem.

will look into PageRequestManager and using a hidden field. but will have to wait until tomorrow now. time has beaten me.
0
 
amit_gCommented:
asp:Label data is not posted back to server. Use hidden text field in addition to the label. On the client side set the value in the hidden field and then access it on the server.

<input runat="server" type="hidden" id="HiddenVar">
0
 
FredTangCommented:
please try this:

dim strLablevalue as string

strLablevalue=this.Lbl_id.value
0
 
JOHNFROGAuthor Commented:
Using the hiddenfield was the way to go. Although as I was using nested masterpages I had to extend the logic a bit.

To rtrieve the hiddenfield I used the following .vb  function
  Function getValueFromhiddenfield(ByVal curitem As String) As String
        Dim inpt As HtmlControls.HtmlInputHidden = TryCast(Me.Master.Master.FindControl(curitem), HtmlControls.HtmlInputHidden)
        Return inpt.Value
    End Function

And that did it for me.

Thanks for all your assistance
0
 
leakim971PluritechnicianCommented:
You're welcome! Thanks for the points!
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.