2014-12-02 2 views
0

Я установил HiddenField значение от jQuery, и я хочу использовать это значение HiddenField в page_init событии, но каждый раз, когда я получаю пустое значение. в чем проблема.Как получить значение HiddenField в page_init?

$('#hfKitchenID').val(kitchenid); 

protected void Page_Init(object sender, EventArgs e) 
{ 
    string value = hfKitchenID.Value; 
} 
+0

почему не на ** PageLoad ** ?? –

+0

Я работаю с 'JSON', чтобы добавить html, поэтому никакого смысла в PageLoad, и в некоторых случаях на основании того, какой результат я получил от JSON, я хочу распечатать pdf с помощью WebClientPrint. –

+0

Возможный дубликат http://stackoverflow.com/questions/12370217/asp-net-hidden-field-persistence-during-life-cycle – Pawan

ответ

1

Вы не можете получить значение скрытого поля на Page_init, поскольку значение скрытого поля сохранить в ViewState и ViewState не доступен на Page_Init.

В жизненном цикле страницы LoadViewState Событие происходит сразу после события Init.

+0

любых других возможных решений, например, я храню в 'Session' и получаю результат в 'Init'? –

+0

Да, конечно, вы можете хранить в Сессии. Не могли бы вы объяснить, каков ваш сценарий именно так, чтобы я мог помочь вам лучше –

0

Я хотел бы предложить вам, чтобы использовать запрос в событии Page Init, чтобы получить значение контроля скрытого поля.

Пожалуйста, проверьте образец ниже, надейтесь, что он может вам помочь.

1.Code в странице (.aspx):

<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> 
     <title></title> 
     <script type="text/javascript" language="javascript"> 
      function SetValueToHidden() { 
       var hidden = document.getElementById("HiddenField1"); 
       var text = document.getElementById("TextBox1"); 
       hidden.value = text.value; 
      } 
     </script> </head> <body> 
     <form id="form1" runat="server"> 
     <div> 
      Input text:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><br /> 
      <asp:Button ID="Button1" runat="server" Text="ShowText" OnClientClick="SetValueToHidden()" /> 
      <asp:HiddenField ID="HiddenField1" runat="server" /> 
     </div> 
     </form> 
</body> 
</html> 

2.Code в странице (.cs):

protected void Page_Init(object sender, EventArgs e) 
    { 
     if (Request["HiddenField1"] != null) 
     { 
      Response.Write(Request["HiddenField1"].ToString()); 
     } 
    } 
Смежные вопросы