簡體   English   中英

ajax modalpopup 擴展器顯示來自服務器的數據

[英]ajax modalpopup extender showing data from server on show

也許我對 Ajax 模態彈出窗口的理解不正確。 我想做的是從服務器檢索一些數據,並在用戶單擊頁面上的按鈕時將其顯示在模式彈出窗口中。 以下代碼在頁面的 aspx 中。

 <asp:Panel ID="pnlDetail" CssClass="modal" runat="server">

             <div class="header">
               Data
            </div>
            <div class="body">
                 <div class="header">
                        <asp:Label ID="lblInput" runat="server"></asp:Label>
                   </div>  
            </div> 


   </asp:Panel>

   <ajaxToolkit:ModalPopupExtender ID="mpeDetail" PopupDragHandleControlID="pnlDetail" PopupControlID="pnlDetail" TargetControlID="hdnDetail"

    BackgroundCssClass="modalBG" CancelControlID="ShowDetailClose" runat="server" />

在頁面上按鈕的按鈕單擊事件中,我從服務器檢索數據並將值分配給彈出面板內的 lblInput 並調用 mpe.Show.. 但它不顯示該值。 我假設數據需要在加載 mpe 時出現,但這不是我必須做的。

如果 MPE 無法做到這一點,還有什么替代方案?

我正在使用拖動面板擴展器,因為我也遇到了模態彈出窗口的一些問題。 但這里有一個模態彈出窗口的可能解決方案:

http://blogs.microsoft.co.il/blogs/gilf/archive/2009/08/14/populating-a-modalpopupextender-dynamically.aspx

好的,想通了。 將上面的面板放在更新面板中。

<asp:UpdatePanel ID="updPnlDetail" runat="server" UpdateMode="Conditional">
        <ContentTemplate>

..... <asp:panel .. > ajax mpe control etc (what I have in the question)..

   </ContentTemplate>
    </asp:UpdatePanel>

然后在按鈕點擊,調用如下。

UserControl.LoadData(對象數據內容); (用戶控件具有彈出數據。它不必是用戶控件。在此處將控件與數據綁定)。

updPnlDetail.Update(); mpe.Show();

數據會顯示。 我猜更新面板的更新方法會刷新。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM