2010-12-07 4 views
32

Est-il utile de renvoyer des valeurs de gestionnaires .click() et .change() (comme return true ou return false)?Les gestionnaires d'événements Jquery renvoient des valeurs

+1

Comment voulez-vous dire? Montrez-nous un exemple de la façon dont vous souhaitez utiliser ce résultat (la valeur de retour). –

+1

Juste curieux car certains reviennent vrai d'autres faux et je n'ai rien trouvé dans les docs. – Buzzzz

Répondre

41

return false; empêche l'événement de bouillonner et supprime l'action par défaut.

En d'autres termes, le retour est faux analogue à ces deux lignes

event.stopPropagation(); 
event.preventDefault(); 

Pour les événements bulle et sont résiliables, au moins.

20

return false dans un tel résultat de gestionnaire dans event.stopPropagation() (uniquement pour les gestionnaires d'événements jQuery, comme Tim Bas a suggéré dans les commentaires) et event.preventDefault() étant appelé automatiquement par jQuery.

return true est la même chose que de ne rien retourner (aucune action n'est prise par jQuery).

+3

Dans ce cas, jQuery prend ici des libertés: pour les gestionnaires d'événements non-jQuery, 'return false 'empêche uniquement l'action par défaut et n'empêche pas l'événement de bouillonner. –

+0

@Tim Down: Bon à savoir. Je vais ajouter cela à ma réponse. – jwueller

+0

@TimDown Pour clarifier, par «gestionnaires d'événements non jQuery», voulez-vous dire les gestionnaires qui ont été attachés par d'autres moyens que les méthodes jQuery (.on ou .live/.bind/.delegate), comme addEventListener? –

Questions connexes