I just did this exact thing. Here's what I did to pull the value I'm setting to my label...
For each label you are updating, you need to also create a hidden field. A simple html hidden field will suffice.
<asp:Label runat="server" ID="cust1" Text="" AutoPostBack="false"></asp:Label>
<input type="hidden" name="hidCust1" id="hidCust1" runat="server" enableviewstate="true" />
Ensure that "enableviewstate" is set to "true" for the hidden field.
In your javascript, after you set the value of the label:
if (cust1.innerHTML == '') {
cust1.innerHTML = desc;
icust1.style.visibility = 'visible';
}
also set the value of the hidden field:
document.getElementById("hidCust1").value = cust1.innerText
Then, in your code behind, simple request the value of the hidden field:
sRetVal = hidCust1.Value