2010-07-17 7 views
3

J'ai ma connexion dans une fancybox et la div fancybox est dans un contrôleur. Le problème est que si vous cliquez sur le bouton, rien ne se passe, l'événement n'est pas déclenché. c'est mon controller.ascxL'événement Fancybox n'est pas déclenché

<div id="inline1" style="width:400px;"> 
<ul class="forms"> 
    <li class="inputfield"><asp:TextBox ID="kullanıcı_adi" runat="server"></asp:TextBox></li> 
</ul> 
<ul> 
    <li><asp:TextBox ID="sifre" runat="server"></asp:TextBox></li> 
</ul> 
<ul> 
    <li> 
     <asp:Button ID="Button1" runat="server" Text="Giriş Yap" 
      onclick="Login_Authenticate" /> 
     <asp:Button ID="Button2" runat="server" Text="Vazgeç"/> 
    </li> 
</ul> 
    </div> 

et ceci est mon cotroller.ascx.cs

protected void Login_Authenticate(object sender, EventArgs e) 
    { 
     bool authenticated = AuthenticateMe(kullanıcı_adi.Text, sifre.Text, true); 

     if (authenticated) 
     { 
      FormsAuthentication.RedirectFromLoginPage(kullanıcı_adi.Text, true); 
     } 
    } 

et c'est le default.aspx

<li class="gallery"><a id="various1" href="#inline1">Üye ol/Giriş Yap</a></li> 

<div style="display: none;"> 
    <co:c_login ID="id_c_login" runat="server" EnableViewState=true /> 
</div> 

J'ai trouvé la solution. Même question posée auparavant. Fancybox - ASP.NET button not working Merci pour vos réponses.

+0

est votre page default.aspx enveloppé dans une balise

avec runat = "server"? – jrista

+0

oui mon formulaire de la page default.aspx a runat = serveur –

+0

Il est appelé controller.ascx.cs, et pas cotroller.ascx.cs comme vous avez dans votre question? –

Répondre

1

Un peu en retard, mais cela peut vous aider. Etant donné que fancybox fonctionne, lorsque fancybox affiche le bloc div, il crée un bloc div temporaire avec votre contenu et l'ajoute à la balise de fin de corps de la page, ce bloc temporaire généré est donc créé en dehors du tag de formulaire.

Dans une page Web lorsque vous publiez une page, le contrôle qui génère l'événement de publication doit être dans la balise de formulaire pour identifier l'action de publication de page. Pour résoudre ce problème, vous pouvez utiliser un peu de javascript, créer un autre contrôle de bouton mais il ne doit pas faire partie du contrôle de fancybox, et sur le bouton soumettre dans fancybox, cliquez sur l'événement d'un autre bouton créé tag) avec l'aide de javascript.

Cela devrait résoudre votre problème, veuillez voter s'il répond à votre question.

+1

Bonne réponse. THX. – neverwinter

0

Nous pouvons résoudre le problème de fancybox 2 ne tirant pas en utilisant la propriété parent de fancybox. par exemple -

$("#buttonClick").fancybox({ 
      parent: "form:first",//Asp.net Button click event not working issue solved by using this statement 
      ......your fancybox config options 
     });