2016-05-15 13 views
0

Ich putted ein LogInstatus Steuerelement auf Masterpage und hinzugefügt Extender (ModalPopupExtender). Das Login-Steuerelement befindet sich in einem Bereich und wenn Login geklickt wird, erscheint das Login-Steuerelement (in SQL Server 2008 R2, die Benutzer- und Mitgliedschaftstabellen werden ebenfalls von der Login-Kontrolle erstellt).Login-Steuerelement innerhalb Updatepanel

Aber wenn ich auf Login-Taste klicke, passiert mit falscher ID/Pass nichts. Die Verwendung von postbacktrigger von updatepanel führt zum vollständigen Seitenpostback und Modalpopup verschwindet. Ich muss erneut auf loginstatus klicken, um den angezeigten Fehlertext anzuzeigen.

Bitte leiten, wenn es einen Weg gibt, Fehlertext, wie es sollte innerhalb der Update-Panel

<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Frontend.master.cs" Inherits="FashionReplica.MasterPages.Frontend" %> 

<%@ Register Src="~/Controls/LoginControl.ascx" TagPrefix="uc1" TagName="LoginControl" %> 
<%@ Register Src="~/Management/ManagementControls/LoginModalControl.ascx" TagPrefix="uc1" TagName="LoginModalControl" %> 

<%@ Register assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagprefix="ajaxToolkit" %> 

<%//@ Register Src="~/Controls/topLoginUserStrip.ascx" TagPrefix="uc1" TagName="topLoginUserStrip" %> 
<!DOCTYPE html> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
<title>My Site Title</title> 
<asp:ContentPlaceHolder ID="head" runat="server"> 
</asp:ContentPlaceHolder> 
<link href="../Styles/styles.css" rel="stylesheet" /> 
<script src="../Scripts/modernizr-2.8.3.js"></script> 

<link href="../Styles/button.css" rel="stylesheet" />  
<link href="../Styles/dd.css" rel="stylesheet" /> 
<link href="../Styles/dialog.css" rel="stylesheet" />  
<link href="../Styles/jquery-ui.css" rel="stylesheet" />   

<script src="../Scripts/jquery-2.2.1.js"></script>  
<script src="../Scripts/jquery-ui-1.11.4.js"></script>  
<script src="../Scripts/jquery-ui.js"></script>  
<script src="../Scripts/modernizr-2.8.3.js"></script> 

</head> 
<body id="body"> 

<form id="form1" runat="server"> 

    <asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true" EnablePartialRendering="true"> 
     <Scripts> 
      <asp:ScriptReference Path="~/Scripts/jquery-2.1.4.min.js" /> 
     </Scripts> 
    </asp:ScriptManager>  

<div> 
    <asp:UpdatePanel UpdateMode="Conditional" runat="server"> 
     <ContentTemplate> 
    <asp:Panel runat="server" ID="Pan1" CssClass="modalPopup">     
      <asp:Login ID="Login1" runat="server" CreateUserText="SignUp" CreateUserUrl="~/Signup.aspx" FailureText="Wrong ID/Password"></asp:Login> 
     </asp:Panel> 
      </ContentTemplate> 
    </asp:UpdatePanel> 
    <asp:LoginStatus ID="LoginStatus1" runat="server" /> 

    <ajaxToolkit:ModalPopupExtender ID="LoginStatus1_ModalPopupExtender" runat="server" CancelControlID="btnCancle" BehaviorID="LoginStatus1_ModalPopupExtender" TargetControlID="LoginStatus1" PopupControlID="Pan1"> 
    </ajaxToolkit:ModalPopupExtender> 

    <div class="site-title"><a href="http://p2p.wrox.com/Default.aspx">Site Title</a></div> 
    <div id="loginModalUserControl" style="display:none;"> 
     <uc1:LoginControl runat="server" id="LoginControl" /> 
    </div> 
    <nav> 
     <ul id="menu"> 
      <li> 
      <a href="http://p2p.wrox.com/Default.aspx">Home</a> 
       </li> 
      <li> 
       <a href="http://p2p.wrox.com/About.aspx">About Us</a> 
      </li> 
      <li> 
       <a href="http://p2p.wrox.com/Conact.aspx">Conact Us</a> 
      </li> 
      <li> 
       <a href="http://p2p.wrox.com/Management/Add Brand.aspx">Add Brand</a> 
      </li> 
     </ul> 

    </nav> 

    <asp:ContentPlaceHolder ID="FirstContent" runat="server"> 

    </asp:ContentPlaceHolder> 

    <footer>© 2016 - Site Title</footer> 
</div> 
</form> 

Antwort

0

Set UpdateMode="Conditional" und ChildrenAsTriggers="false" in Ihrem Update

+0

Vielen Dank für Ihre Antwort angezeigt haben, Das habe ich schon probiert. Während des Drilldowns habe ich festgestellt, dass das Login-Steuerelement einwandfrei funktioniert. Wenn eine korrekte ID/Pass gegeben wird, authentifiziert es sich. Aber wenn ich falsche ID/Pass geben und Login-Taste drücken, wird die wörtliche Steuerung innerhalb der Login-Kontrolle nicht aktualisiert (show failure text) im Update-Panel. Kannst du weiter führen? – user1489440

+0

hast du versucht, den loginstatus im updatepanel hinzuzufügen? – jelliaes

+0

Ja, es ist das loginstatus-Steuerelement, das als TargetControlID = "LoginStatus1" fungiert. – user1489440