2010-12-07 7 views
32

Gibt es irgendeine Verwendung, um Werte von .click() und .change() Handler (wie return true oder return false) zurückzugeben?Jquery-Event-Handler geben Werte zurück

+1

Wie meinst du das? Zeigen Sie uns ein Beispiel, wie Sie dieses Ergebnis (den Rückgabewert) verwenden möchten. –

+1

Nur neugierig, da einige andere falsche zurückgeben und ich konnte nichts in den Dokumenten finden. – Buzzzz

Antwort

41

return false; wird das Ereignis aus sprudeln UND die Standardaktion unterdrücken.

In anderen Worten, falsche Zurück ist analog zu diesen beiden Linien

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

Zu diesem Blase Ereignisse und sind cancelable, mindestens.

20

return false in einem solchen Behandlungsergebnisse in event.stopPropagation() (nur für jQuery Event-Handler, als Tim unten in den Kommentaren vorgeschlagen) und event.preventDefault() automatisch von jQuery aufgerufen wird.

return true ist das gleiche wie die Rückgabe von nichts (keine Aktion von jQuery).

+3

In diesem Fall nimmt jQuery hier Freiheiten in Anspruch: Für nicht-jQuery-Event-Handler verhindert 'return false' nur die Standardaktion und stoppt nicht das Bubbling des Ereignisses. –

+0

@Tim Down: Gut zu wissen. Ich füge das meiner Antwort hinzu. – jwueller

+0

@TimDown Um mit "Nicht-jQuery-Event-Handler" zu verdeutlichen, meinen Sie Handler, die auf andere Weise als die jQuery-Methoden (.on oder .live/.bind/.delegate) angehängt wurden, wie addEventListener? –

Verwandte Themen