2012-11-15 46 views
1

空我有一對夫婦更新面板我的網頁上進行如下:文本框的值保持在UpdatePanel的

<asp:UpdatePanel ID="UpdatePanel1" runat="server"> 
    <Triggers> 
    <asp:AsyncPostBackTrigger ControlID="Button1" /> 
    </Triggers> 
    <ContentTemplate> 
    <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 
    <asp:Button ID="Button1" runat="server" Text="Submit"></asp:Button> 
    </ContentTemplate> 
</asp:UpdatePanel> 

<asp:UpdatePanel ID="UpdatePanel2" runat="server"> 
    <ContentTemplate> 
    ...some more basic controls here... 
    </ContentTemplate> 
</asp:UpdatePanel> 

當我打在UpdatePanel1提交,在文本框中的值丟失。我不確定這是由於在同一頁面上有兩個更新面板還是其他原因。

UpdatePanel2是我試圖移動文本框的值。但爲了測試字符串,我刪除了所有的代碼,並簡單地在Button1的Click事件上添加了一個消息框,以檢查字符串是否正在傳遞。似乎每次都是空字符串。

我試過設置ChildrenAsTriggers爲true和false,刪除觸發器部分,將更新面板的enableviewstate屬性設置爲true,嘗試在更新模式之間切換,但似乎沒有任何工作。

這可能是重複的,但我在這裏和谷歌上瀏覽了與此相關的帖子,但仍未找到任何解決方案。

任何想法?

+0

此代碼適合我。你如何檢查TextBox1的值?並顯示您的控制/頁面設置。 –

+0

目前,我只是使用'msgbox(textbox1.text)'來測試它。在此網站的前一版本(在asp.net 4.0中),它工作正常。現在我正在做這個代碼升級到4.5,我遇到了這個問題... – Zishan

+0

把類似var test = TextBox1.Text;在此控件的Page_Load事件的開始處進行調試。 –

回答

1

事實證明,我正在使用jQuery UI對話框作爲我的更新面板之一,它將對話框添加到正文結尾(表單標籤外)。我在我的對話框腳本中添加了以下行:

dlg.parent().appendTo(jQuery("form:first")); 

...並且它做了詭計!

相關問題