我有一個ModalPopupExtender,它允許客戶應用付款信息。它一直在努力工作。然後客戶要求查看ModalPopup上的總價。這似乎沒有什麼大不了,只是從父控制中獲取總和並將其傳遞到ModalPopup控件中。似乎有沒有簡單的方法做到這一點。將數據傳遞到ModalPopupExtender
這裏是我的HTML代碼,請記住這個代碼被包裝在一個UpdatePanel的現在,這裏
<asp:LinkButton ID="lnkMakePayment" runat="server" Visible="true" OnClick="lnkMakePayment_Click" >
<asp:Label ID="lblMakePayment" runat="server" Text="Make Payment"/></asp:LinkButton>
<asp:Button ID="btnDummy" style="display: none;" runat="server"
OnClick="btnDummy_Click" />
<ajaxToolkit:ModalPopupExtender ID="mdlPopupPayment" runat="server"
TargetControlID="btnDummy" PopupControlID="pnlMakePayment"
CancelControlID="popUpCancel" DropShadow="true" BackgroundCssClass="modalBackground">
</ajaxToolkit:ModalPopupExtender>
<asp:Panel ID="pnlMakePayment" runat="server" Style="display: none;"
SkinID="PopUpPanel" class="ContentBoxColor" Width="400px" Height="170px">
<MP1:MakePaymentPopup ID="MakePayment" runat="server" />
<div style="text-align: right; width: 100%; margin-top: 5px;">
<asp:Button ID="popUpCancel" runat="server" Text="Cancel" Width="0px" />
</div>
</asp:Panel>
的代碼隱藏
protected void btnDummy_Click(object sender, EventArgs e) { }
protected void lnkMakePayment_Click(object sender, EventArgs e)
{
mdlPopupPayment.Show();
}
所以,當用戶點擊付款鏈接的ModalPopup工作正常。它甚至會觸發父控件監聽的事件,以應用付款信息和用戶在彈出窗口中填寫的所有相關付款細節。再次,這一切工作正常。
我在總髮送由於ModalPopup第一次嘗試如下:
protected void lnkMakePayment_Click(object sender, EventArgs e)
{
// MakePayment is the actual ModalPopup control and total due is a public property
MakePayment.TotalDue = txtTotalDue.Text
mdlPopupPayment.Show();
}
這樣做的問題是,當我點擊鏈接以顯示ModalPopup的pageLoad的事件不火,所以我有沒有辦法將我的屬性分配給ModalPopup中的標籤。 我甚至試圖使用會話對象,但有同樣的問題。 我甚至無法前往數據庫,因爲我無法傳入客戶ID。 任何想法? 我是Javascript的新手,並且傾向於服務器端靈魂,但在這一點上,我願意嘗試任何東西。
MakePayment用戶控件包含3個asp文本框。一個用於輸入支付金額,另一個用於支付類型,第三個用於支票號碼等註釋。在控制器上還有一個應用和取消按鈕。父控件是一個基本的ascx頁面,它是一個數據輸入屏幕,其中包含ModalPopupExtender和所有用於激活它的html代碼。
對不起,如果我不清楚我加了一些的問題 – 2009-08-14 12:47:15