Funkcja zwraca odpowiedź Ajax - wartość jest niezdefiniowana? jQuery Ajax [duplikat]
To pytanie ma już tutaj odpowiedź:
Jak zwrócić odpowiedź z połączenia asynchronicznego? 33 odpowiedziGdy ostrzegam zwracaną wartość z funkcji jsonServerResponse, jej wartość jest niezdefiniowana - pomimo zwracania JSON ze strony process.php.
function jsonServerResponse(operation, JSOoptionalData) {
JSOoptionalData = (typeof JSOoptionalData == "undefined") ? 'defaultValue' : JSOoptionalData
var jqxhr = $.ajax({
type: "POST",
url: "process.php",
data: "apicommand=" + JSOoptionalData,
success: function (json) {
return jQuery.parseJSON(json);
}
});
}
alert("Response as JS Object: "+jsonServerResponse("operation"));
Wiem, że problem polega na tym, że funkcja alertu wykonana przed zakończeniem żądania asynchronicznego, ale nie jestem pewien, jak rozwiązać ten problem. Każda rada jest naprawdę doceniana :)