Ich möchte die Rückgabedaten von jedem Ajax-Aufruf senden und auch in der ajaxComplete-Funktion verfügbar machen.
Also wenn ich eine $.post
oder $.get
oder $.getJSON
und so eine Anfrage wie folgt habe:
Ich möchte auch die gleichen Daten in
bekommen %Vor%Es bedeutet, dass ich in der globalen ajaxComplete-Funktion auch die gleichen Daten haben möchte, die ich bekomme, wenn ich eine der ajax-Funktionen aufruft.
Danke für die Antworten.
XMLHttpRequest.responseText
Beachten Sie, dass Sie, wenn Sie den Datentyp im Aufruf von json setzen oder die Funktion getJSON verwenden, intern kopieren müssen, was jquery tut, und eval ('(' + data + ')' verwenden), um die Daten in json zu bekommen so dass es den Datenparameter spiegelt, der an den Erfolgsrückruf übergeben wurde.
Oder wie activa angibt, rufen Sie einfach die interne Methode auf, um die Arbeit zu speichern.
Das ist kein einfacher Weg, aber Sie könnten die Daten aus dem xhr-Objekt extrahieren. jQuery enthält eine interne Funktion, die genau das tut, aber nicht dokumentiert ist.
Sie können diese Methode wie folgt aufrufen:
%Vor%Aber Vorsicht: Dies ist in jQuery 1.3.2 gültig, und da es undokumentiert ist, kann es in zukünftigen Versionen von jQuery geändert werden.