2016-06-29 11 views
-1

Ich habe Formular in modalem Popup mit 5 Checkbox mit autopostback = true. Wenn ich auf eines der Kontrollkästchen klicke, schließt sich mein modales Popup automatisch. Ich benutze Update-Panel auch und ScriptManager.RegisterStartupScript (this, this.GetType(), "Pop", "openModal();", true); Im Code hinter diesem Code öffnet sich mein modales Popup. Aber ich möchte das Popup nicht wieder öffnen.
Wie soll ich das erreichen?Wenn ich auf checkbox klicke, schließt mein bootstrap Modal Pop

Antwort

0

einfach folgenden Code einfügen, bevor pa ge Last

protected void Page_PreInit(object sender, EventArgs e) { 
    UpdatePanel updatePanel = Master.FindControl("your main Contetnt id") as UpdatePanel; 
    updatePanel.UpdateMode = UpdatePanelUpdateMode.Conditional; 
    updatePanel.ChildrenAsTriggers = false; 
} 
+0

Das ist richtig funktioniert, wenn Autopostback ist wahr... – Sagar

0

Das Öffnen des Popup-Fensters ist immer erforderlich. Autopostback bewirkt, dass die gesamte Seite neu geladen wird und somit der Status von jquery/javascript-Variablen und -Modellen usw. verloren geht. Wenn Sie das nicht möchten, müssen Sie Ajax verwenden, um das Klicken der Kontrollkästchen und die Aktionen, die sie auslösen sollten, mitzuteilen.

+0

Danke Herr, ich weiß nicht, keine Ahnung, wie das zu tun, können Sie mir helfen ... – Sagar

+0

durch diese Kontrolle meines Kalenders mit nicht funktioniert .. – Sagar

0

wickeln Sie Ihre Kontrollkästchen innerhalb <asp:UpdatePanel> Kontrolle:

<asp:UpdatePanel runat="server" ID="updatePanel"> 
     <ContentTemplate> 
      <asp:CheckBox ID="CheckBox1" runat="server" Text="Checkbox 1" OnCheckedChanged="CheckBox1_CheckedChanged" AutoPostBack="true" /> 
      <asp:CheckBox ID="CheckBox2" runat="server" Text="Checkbox 2" OnCheckedChanged="CheckBox1_CheckedChanged" AutoPostBack="true" /> 
     </ContentTemplate> 
    </asp:UpdatePanel> 

-Code hinter:

protected void CheckBox1_CheckedChanged(object sender, EventArgs e) 
{ 
    lblResults.Text = String.Empty; 

    if (CheckBox1.Checked) 
     lblResults.Text = "Checkbox 1."; 
    if (CheckBox2.Checked) 
     lblResults.Text += "Checkbox 2."; 
} 

.ASPX:

<head runat="server"> 
    <title></title> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.3/jquery.min.js"></script> 
    <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script> 
    <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" /> 
    <script type="text/javascript"> 
     $(function() { 
      $('#messageBox').modal('show'); 
     }); 
    </script> 
</head> 
<body> 
    <form id="form1" runat="server"> 
     <div class="modal fade" id="messageBox" role="dialog"> 
      <div class="modal-dialog"> 
       <div class="modal-content"> 
        <div class="modal-header"> 
         <button type="button" class="close" data-dismiss="modal">&times;</button> 
         <h4 class="modal-title">Modal</h4> 
        </div> 
        <div class="modal-body"> 
         <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager> 
         <asp:UpdatePanel runat="server" ID="updatePanel"> 
          <ContentTemplate> 
           <asp:CheckBox ID="CheckBox1" runat="server" Text="Checkbox 1" OnCheckedChanged="CheckBox1_CheckedChanged" AutoPostBack="true" /> 
           <asp:CheckBox ID="CheckBox2" runat="server" Text="Checkbox 2" OnCheckedChanged="CheckBox1_CheckedChanged" AutoPostBack="true" /> 
           <asp:Label runat="server" ID="lblResults" /> 
          </ContentTemplate> 
         </asp:UpdatePanel> 
        </div> 
        <div class="modal-footer"> 
         <button type="button" class="btn btn-default" data-dismiss="modal">Close</button> 
        </div> 
       </div> 
      </div> 
     </div> 
    </form> 
</body> 
Verwandte Themen