Comment accéder à un ensemble de variables dans un appel Ajax

J'essaie de définir une variable dans une fonction qui appelle un code PHP via Ajax. Le problème est que la variable n'est pas accessible depuis l'extérieur de la fonction, pour ainsi dire.

var startPageSelected = ''; function getSavedStartPage() { $.post(webroot + 'home/get_saved_startpage/', function(data){ startPageSelected = $.parseJSON(data); alert(startPageSelected); //alert 1 }); } function something() { alert(startPageSelected); //alert 2 } 

Donc, lorsque j'appelle getSavedStartPage, l' alerte 1 me donne la valeur correcte, mais en dehors de cette " alerte 2 " dans mon exemple, la variable reste vide. Je suppose qu'il a quelque chose à voir avec la portée et / ou les choses ajax asynchrones, mais je ne pouvais pas comprendre comment stocker mes données ajax à la place pour que je puisse y accéder plus tard. Peut-être que quelqu'un peut m'aider à ce sujet?

Vous pouvez passer vos données rétablies en tant que paramètre de votre fonction.

 function getSavedStartPage() { $.post(webroot + 'home/get_saved_startpage/', function(data){ startPageSelected = $.parseJSON(data); alert(startPageSelected); //alert 1 something(startPageSelected); }); } function something(data) { alert(data); //alert 2 }