Salve,
st� facendo un'app abbastanza complessa e mi trovo in una situazione un po' particolare.
All'interno di una funzione ne richiamo un'altra che mi restituisce dei dati (un json) arrivati da una chiamata ajax, subito dopo voglio effettuare un' semplice console.log di questi dati.
Al momento per� mi esce sempre undefined perch� quando vado ad eseguire il console.log la variabile globale che vado a definire nella chiamata ajax non � ancora valorizzata.
Vi metto un po' di codice per farvi capire meglio
codice:
var parents = "";
page.get_parents = function (value) {
$.ajax({
dataType : "json",
type: "POST",
data: {
"action": "get_parents",
},
success: function (response) {
parents = response;
},
error: function (xhr, status, error) {
var err = eval("(" + xhr.responseText + ")");
console.log(err.Message);
}
});
}
page.test = function(){
page.parents(value);
console.log(parents);
}
page.test();
In pratica il console.log restituisce sempre undefined perche parents non � valorizzata in un'tempo utile.
Con un setTimeout andrebbe tutto bene ma non mi sembra una soluzione elegante diciamo.
Come potrei ovviare?
Grazie in anticipo