2013-09-26 2 views
0

У меня есть следующая проблема. У меня есть страница и в событии Document Ready я вызываю веб-службу, которая возвращает строковое значение. После этого значение присваивается элементу управления Label (видимо). После этого я хочу использовать значение в Code Behind, но я не знаю, как его получить.Как сохранить значение, установленное в javascript после обратной передачи

Все события Page_load, Page_Prerender, ... прошли до того, как значение было извлечено из службы, поэтому я не могу получить его ни в одном из них.

Если я попытаюсь получить его одним нажатием кнопки, страница сделает обратную передачу и теряет значение.

Я попытался найти элемент управления через Request.Form, но он все равно ничего не возвращает.

ответ

0

JQuery:

$(document).ready(function() { 
    var ValueOFWebService = "sss"; 
    $('#hf').val(ValueOFWebService); 
}); 

ASPX: за

<input id="hf" runat="server" type="hidden" /> 
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" /> 

Код:

protected void Button1_Click(object sender, EventArgs e) 
{ 
    Response.Write(hf.Value); 
} 
0

Вы можете изменить значение label на стороне клиента, но вы не получите новое значение метки на стороне сервера, поскольку оно не редактируется. вы можете поставить hidden field, чтобы получить значение этого.

+0

вы никогда не получите новое значение, потому что на сервере вы получите старое значение. Вы можете установить значение метки только на стороне сервера, а не на стороне клиента. – Nirmal

0

Вы можете сохранить значение в скрытом поле

Aspx:

<asp:HiddenField ID="CustomHiddenField" runat="server" ClientIDMode="Static" /> 

В коде позади файла:

ScriptManager.RegisterClientScriptBlock(this, this.GetType(), Guid.NewGuid().ToString(), "someval=" + this.CustomHiddenField.Value, true); 

Jquery:

$(document).ready(function() { 
var value= someval; 
$('#htmlemement').val(value); 

});

Смежные вопросы