2013-09-24 4 views
1

Je le script JQuery suivant dans une page ASPX:bouton d'accès dans la fenêtre pop-up

<script type = "text/javascript"> 
$(".Test").click(function() { 
alert("JQueryTest"); 
}); 
</script> 

et une déclaration pour un bouton:

<asp:Button ID="TestButton" cssClass="Test" runat="server" Text="Test" /> 

Le bouton affiche avec succès sur une fenêtre pop-up Cependant, le script JQuery n'est pas exécuté lorsque le bouton est cliqué. Je l'ai testé lorsque le bouton n'a pas été ajouté à une fenêtre contextuelle et que le script est exécuté comme prévu (sur clic). La fenêtre/le contrôle contextuel est de type AjaxControlToolkit.ModalPopupExtender.

Est-ce que quelqu'un a des raisons pour lesquelles je ne peux pas accéder au bouton de cette manière et a une autre méthode pour le faire?

+0

Qu'est-ce rendu que, est jQuery chargé ? – mplungjan

+0

jQuery est chargé par la page maître, comme je l'ai dit, il semble que ce soit seulement un problème d'accès au bouton sur une fenêtre pop-up. –

Répondre

1

Vous devez inclure votre événement dans document.ready()

Si vous avez le bouton dans le opup vous devez utiliser on() car est probablement créé lors de l'exécution sur le bouton et il n'y a pas de cas que dans le dom lors du démarrage la page.

Essayez ceci:

<script type = "text/javascript"> 
$(document).ready(function(){ 
    $(document).on('click','.Test',function() { 
    alert("JQueryTest"); 
    }); 
}); 
</script> 
+0

Après avoir essayé cela, le script ne semble toujours pas être exécuté. –

+0

Avez-vous vérifié si vous avez une erreur dans votre console? @DavieBrown –

+0

Aucune erreur n'a été signalée dans la console - Si le bouton ne se trouve pas dans cette "fenêtre contextuelle", le script s'exécute correctement. Il doit y avoir quelque chose qui me manque quand j'y accède de cette manière. –

0

En option, vous pouvez également créer une fonction javascript et l'affecter à un côté serveur événement click de votre bouton Ussing l'attribut onclick

Questions connexes