2012-06-07 43 views
0

我正在使用UpdatePanel異步更新ASP.NET頁面上的控件。在回發期間,我想獲得TextBox控件的值。然而,我得到的值始終是TextBox的原始文本值,而不是用戶輸入的文本。如何在回發中獲取TextBox服務器端的更新值?在Async Postback上獲取ASP.NET TextBox的值

在此先感謝您提供的任何建議。

下面的代碼:在GridView

<asp:UpdatePanel ID="GridUpdatePanel" runat="server"> 
    <ContentTemplate> 
     <asp:GridView ID="AdminGridView" runat="server" 
      onrowcreated="AdminGridView_RowCreated" AutoGenerateColumns="False" 
      RowStyle-HorizontalAlign="Center" CssClass="Grid" Font-Size="100%" 
      BorderColor="Black" oninit="AdminGridView_Init"> 
     </asp:GridView> 
     <asp:TextBox ID="SortLabel" runat="server" Text="Recipients"></asp:TextBox> 
     <asp:TextBox ID="DirectionLabel" Text="DESC" runat="server"></asp:TextBox> 
    </ContentTemplate> 
    <Triggers> 
     <asp:AsyncPostBackTrigger ControlID="Button1" /> 
    </Triggers> 
</asp:UpdatePanel> 

- 編輯 -

我要補充一點,我試圖找回在_Init(TextBox的值)事件 - 也許有更好的地方來檢索TextBox的值?

+0

是生成回發的UpdatePanel內的文本? –

+0

是的,我試圖訪問的文本框是在被調用的UpdatePanel中。 –

+0

你能否貼一些代碼?我想知道是否在某處重置了文本框的值,例如在page_load上。 –

回答

1

您無法在Init事件中獲取TextBox的更新值。在使用過帳值設置頁面控件之前,此事件在頁面生命週期中執行得太早。你爲什麼不在Button1點擊?

This MSDN文章可以幫助你瞭解asp.net頁面生命週期

+0

感謝您的幫助。我將一些邏輯移到了不同​​的事件中,現在可以在需要時訪問這些值。謝謝! –