2010-10-20 59 views
0

我想在将一些数据保存到数据库后得到一个弹出窗口。当使用ConfirmButtonExtender和ModalPopupextender时,它会要求TargetControlID。所以我给了TargetcontrolID作为提交按钮。所以无论何时点击提交按钮,它都会首先显示弹出窗口,显示“您的密码已成功保存”。关闭弹出窗口后,它将信息保存在数据库中。这不应该是这样。它必须首先将信息保存在数据库中,如果它成功保存密码,则应显示弹出窗口。你认为我应该改变什么?请帮忙..TargetControlID弹出问题

<cc1:ConfirmButtonExtender DisplayModalPopupID="ModalPopupExtendersave" ID="ConfirmButtonExtendersave" 
    runat="server" TargetControlID="imgbtnSubmit"> 
</cc1:ConfirmButtonExtender> 
<cc1:ModalPopupExtender ID="ModalPopupExtendersave" runat="server" TargetControlID="imgbtnSubmit" BackgroundCssClass="modalBackground" 
    OkControlID="btnOK" PopupControlID="pnlPopup" > 
</cc1:ModalPopupExtender> 




protected void imgbtnSubmit_Click(object sender, ImageClickEventArgs e) 
{ 
    if (txtpassword1.Text != "" && txtpassword2.Text != "" && txtpassword1.Text == txtpassword2.Text) 
    { 
     Savepassword(); 

     if (Savepassword()) 
     { 
      ModalPopupExtendersave.Show(); 
      pnlPopup.Visible = true; 
     } 
     else 
     { 
      lblerror.Text = "Error in saving password"; 
     } 
    } 

} 

谢谢大家!!

回答

2

将LinkBut​​ton或Button Control添加为visible等于false并将其设置为TargetControlID,然后在代码中调用Show方法为ModalPopupExtender控件。

+1

@Ram:看起来你也可以摆脱ConfirmButtonExtender的。在这种情况下,它没有做任何事情。 – kevev22 2010-10-20 18:32:40

+0

太棒了!非常感谢你们! :) – Ram 2010-10-20 20:28:27

1

我同意DEVMBM - 这里有一个例子:

<script runat="server"> 
    protected void btnShowModal_Click(object sender, EventArgs e) 
    { 
     // do stuff here - e.g. save password to database 

     // show modal popup 
     mpeModalDemo.Show(); 
    } 
</script> 

<asp:ImageButton 
    ID="btnShowModal" 
    OnClick="btnShowModal_Click" 
    CausesValidation="false" 
    runat="server" /> 

<asp:Button 
    ID="btnFakeTarget" 
    CausesValidation="False" 
    Style="display: none" 
    runat="server" /> 

<ajax:ModalPopupExtender 
    ID="mpeModalDemo" 
    BackgroundCssClass="modalBackground" 
    PopupControlID="pnlModalDemo"      
    TargetControlID="btnFakeTarget" 
    PopupDragHandleControlID="pnlModalDemo" 
    runat="server" /> 

<asp:Panel 
    ID="pnlModalDemo" 
    style="display:none;" 
    runat="server"> 

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

      <style type="text/css"> 
       .modalBackground { 
        background-color: #000000; 
        filter: alpha(opacity=40); 
        opacity: 0.7; 
       } 
      </style> 

      <!-- modal popup content here --> 

     </ContentTemplate> 
     <Triggers> 
      <asp:AsyncPostBackTrigger ControlID="btnShowModal" EventName="Click" /> 
     </Triggers> 
    </asp:UpdatePanel> 
</asp:Panel>