最近開始想要把modalpopup開始使用,
遇到的一些心得:

今天要做的是,在GridView中放按鈕觸發時可以跳出popup,然後帶目標資料的詳細內容

這時候,原本modalpopup的模式應該是:
觸發popup的按鈕->觸發popup->popup extender將要popup的panel秀出

不過,這時候如果將觸發popup的TargetControlID設為GridView內的按鈕時,則會發生錯誤,無法正確執行~

後來~找出的解決方法,最簡單的應該就是,給他一個假的按鈕,使TargetControlID可以正確抓到,
再於後端程式碼中使用modalpopup.show() 及.Hide()的兩個動作來進行顯示及隱藏popup panel.
這時就可以正確使用了~

ex:
<cc1:ModalPopupExtender ID="ModalPopupExtender1" runat="server" BackgroundCssClass="modalBackground"
CancelControlID="btnPopCancel" PopupControlID="PanelPop"
TargetControlID="btnPop">
</cc1:ModalPopupExtender>

記得這邊button隱藏要使用style="display:none", 如果用visible="false"的話,會無法正確抓到這個按鈕!
<asp:Button ID="btnPop" runat="server" Text="popup" Style="display:none"  />
(假的button)

<asp:Panel ID="PanelPop" runat="server" CssClass="modalPopup">
(裡面放要popup的東西)
<asp:Button ID="btnPopCancel" runat="server" Text="關閉" OnClick="btnPopCancel_Click" />
</asp:Panel>

後端:
//GridView內的按鈕
protected void GVButton(object sender, EventArgs e)
{
this.ModalPopupExtender1.Show();
}
//panel取消的按鈕
protected void btnPopCancel_Click(object sender, EventArgs e)
{
this.ModalPopupExtender1.Hide();
}

arrow
arrow
    全站熱搜

    pikachumk2 發表在 痞客邦 留言(0) 人氣()