Erfolgsrückruffunktionen für jQuery AJAX definieren
Beim Abrufen von Daten von einem Server mit jQuery AJAX definieren Entwickler häufig die Erfolgsrückruffunktion innerhalb von .ajax()-Block. Ist es jedoch möglich, die Rückruffunktion extern zu definieren?
Externe Rückruffunktion
Das bereitgestellte Codefragment versucht, die Erfolgsrückruffunktion außerhalb von .ajax() zu definieren. block:
var dataFromServer; //declare the variable first function getData() { $.ajax({ url : 'example.com', type: 'GET', success : handleData(dataFromServer) }) } function handleData(data) { alert(data); //do some stuff }
Empfehlung: Verwenden Sie verzögerte Objekte
Während das Code-Snippet technisch funktionieren kann, wird nicht mehr empfohlen, den Erfolgsrückruf außerhalb der .ajax-Datei zu definieren ()-Block. Verwenden Sie stattdessen verzögerte Objekte:
function getData() { return $.ajax({ url : 'example.com', type: 'GET' }); } function handleData(data /* , textStatus, jqXHR */ ) { alert(data); //do some stuff } getData().done(handleData);
Verzögerte Objekte bieten mehrere Vorteile:
Die Verwendung verzögerter Objekte bietet mehr Flexibilität und Kontrolle über die AJAX-Rückrufverarbeitung und macht es zu einem robusteren und moderneren Ansatz.
Das obige ist der detaillierte Inhalt vonIst es möglich, jQuery AJAX Success Callback-Funktionen extern zu definieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!