Jquery renvoie la valeur de $ .post () dans la fonction

J’ai une fonction Javascript appelée getCartProducts() qui obtient un tableau JSON via AJAX en utilisant $.post() qui renvoie une valeur. Je veux laisser ma fonction renvoyer cette valeur, mais je ne sais pas comment le faire.

Voici ma fonction:

 function getCartProduct(id){ $.post('core/ajax/getCartProduct.ajax.php', {id: parseInt(id)}, function(data){ var result = data; }); return result; } 

Je sais que cela ne fonctionnera pas, car le résultat de la variable n’est actif que dans la fonction $.post() , mais je ne sais pas comment le comprendre.

Ajoutez une fonction de rappel (AJAX étant asynchrone, votre retour est généré avant que des données ne soient renvoyées):

 function returnData(param) { console.log(param); } 

Ajoutez maintenant cette fonction de rappel en tant que paramètre à votre fonction AJAX et lançons-la:

 function getCartProduct(id, callback){ $.post('core/ajax/getCartProduct.ajax.php', {id: parseInt(id)}, function(data){ callback(data); }); } getCartProduct(id, returnData);