J'essaie d'appeler une fonction qui contient du code jQuery. Je veux que cette fonction renvoie les résultats de l'instruction jQuery. Ça ne marche pas, et j'essaie de comprendre pourquoi. L'affichage affiche "[object XMLHttpRequest]
". Cependant, si j'exécute l'instruction jQuery par elle-même, en dehors d'une fonction, cela fonctionne bien ->$.get(scriptURL, {}, function(data) { alert(data); })
J'aimerais pouvoir réutiliser ce code en le mettant dans une fonction qui retourne le $.get
Les données. Quelle erreur fondamentale suis-je en train de faire ici?
Merci pour la ventilation complète. La combinaison du passage en synchrone et de l'utilisation d'une variable dans la portée externe pour transmettre des données a résolu mon problème. – Kai
Très bien, mais sachez qu'en passant en synchrone, vous risquez de bloquer le navigateur en attendant la réponse. C'est probablement une erreur, à moins que vous sachiez que votre utilisateur sera toujours sur une connexion ultra-rapide et votre serveur ne sera jamais submergé.Cela va également à l'encontre de ce qu'AJAX est en train de faire: il vise à rendre les applications web plus réactives, mais ce changement pourrait potentiellement rendre le vôtre beaucoup moins réactif. –
Je suis d'accord avec @JacobM qu'il est préférable d'utiliser asynchrone si possible et de traiter vos actions dans le rappel. – tvanfosson