Sven Rautenberg: Callback - Probleme mit Return-Value

Beitrag lesen

Moin!

Aber das *kannst* Du doch gar nicht
OK, das wurde mir nun auch bewusst (habe nur ein bißchen gebraucht ;-).

Sprich, wenn ich das über die eigentliche Low-Level Funktion $.ajax realisiere, und dort async auf false stelle, dann erreiche ich das erwünschte Resultat.

Nicht wirklich. Dazu ist die Callback-Funktion doch da, dass sie mit dem Ajax-Resultat irgendwelche sinnvollen Dinge anstellt (z.B. die Darstellung des Ergebnisses in der Seite regelt).

Sprich: Du startest den Ajax-Aufruf in einer Funktion, und das Ergebnis des Ajax verarbeitest du im Success-Callback wie gewünscht. Closures sorgen dafür, dass du im Callback noch auf Variablenwerte zugreifen kannst, die die startende Funktion definiert hat. Heißt: Wenn ein Wert dir in der Callback-Funktion nicht mehr zur Verfügung steht, kopiere ihn in eine zur aufrufenden Funktion lokalen Variable.

- Sven Rautenberg