2009-05-16 9 views
0

La fonction JQuery suivante ne fonctionne pas entièrement. IE 7 traite les deux alertes, mais FF 3.0.10 seule la première alerte est déclenchée. Qu'est-ce que j'ai fait incorrectement?Pourquoi cette fonction JQuery ne fonctionne pas dans FF?

function submitClick() { 
    var submitButton = '#<%=SubmitButton.ClientID%>'; 
    alert('got here'); 

    $(submitButton).click(function() { 
     alert('got here too'); 
     $.blockUI({ message: $('#process-message') }); 
    }); 
} 

Aussi, j'ai appelé alerte ($ (submitButton)); et cela renvoie un "objet objet" dans FF.

+0

Essayez d'exécuter l'alerte ($ (submitButton) .length) dans Firefox. Il devrait retourner un nombre supérieur à 1. S'il vous plaît fournir un peu de HTML généré si vous pouvez – brianpeiris

+0

* Désolé, je voulais dire alerte ($ (submitButton) .length) devrait alerter un nombre supérieur à 0. – brianpeiris

Répondre

2

Vous ne semblez pas faire ce que vous pensez faire. En fait, dans la méthode submitClick(), vous ajoutez un gestionnaire d'événement click à un bouton. Mais vous n'appelez pas ce gestionnaire. Cela n'arrivera pas tant que vous n'aurez pas cliqué sur le bouton.

Essayez-vous de cliquer par programme sur ce bouton? Si oui, vous ne faites pas cela. Cela va cliquer sur le bouton:

function submitClick() { 
    var submitButton = '#<%=SubmitButton.ClientID%>'; 
    alert('got here'); 

    $(submitButton).click(); 
    alert('got here too'); 
    $.blockUI({ message: $('#process-message') }); 
} 
+0

Il semble que j'utilisais deux versions de la code, on a ajouté le gestionnaire d'événements prêt, l'autre je viens de mettre l'appel de fonction JS sur le bouton réel. À un moment donné, les deux se sont rassemblés. Merci. – blu

Questions connexes