У меня есть следующая проблема. У меня есть страница и в событии Document Ready
я вызываю веб-службу, которая возвращает строковое значение. После этого значение присваивается элементу управления Label (видимо). После этого я хочу использовать значение в Code Behind, но я не знаю, как его получить.
Все события Page_load
, Page_Prerender
,... прошли до того, как значение было извлечено из службы, поэтому я не могу получить его ни в одном из них.
Если я попытаюсь получить его одним нажатием кнопки, страница сделает обратную передачу и потеряет значение.
Я попытался найти элемент управления через Request.Form
но он все равно ничего не возвращает.
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);
}
Вы можете сохранить значение в скрытом поле
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);
});
Вы можете изменить значение label
на стороне клиента, но вы не получите новое значение метки на стороне сервера, потому что оно не редактируется. вы можете поместить hidden field
для этого, чтобы получить значение этого.