Simple récupération de valeur d'une fonction js
Résolu
Erhic2
Messages postés
7
Date d'inscription
Statut
Membre
Dernière intervention
-
Erhic2 Messages postés 7 Date d'inscription Statut Membre Dernière intervention -
Erhic2 Messages postés 7 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un problème qui me parait simple : je cherche à récupérer la valeur name que la fonction get_name() se charge d'aller chercher.
Je ne retourne manifestement donc pas correctement ma valeur.
Mes recherches m'ont jusqu'ici donné plusieurs solutions, mais qui ne m'ont pas encore permis de réussir cette simple récupération de valeur...
Voici mon code, merci beaucoup à vous!
J'ai un problème qui me parait simple : je cherche à récupérer la valeur name que la fonction get_name() se charge d'aller chercher.
Je ne retourne manifestement donc pas correctement ma valeur.
Mes recherches m'ont jusqu'ici donné plusieurs solutions, mais qui ne m'ont pas encore permis de réussir cette simple récupération de valeur...
Voici mon code, merci beaucoup à vous!
var id = "id=1"; var name; // Récupère le nom en fonction de l'id dans la bdd function get_name(){ $.ajax({ type: 'POST', dataType: 'json', url: 'http://path/fichier.php', data: id, async: false, success: function(data){ alert (data.name); // affiche bien le nom return data.name; } }, error: function(){ alert('Erreur de connexion.'); } }); } name = get_name(); alert(name); // affiche 'undefined'
A voir également:
- Simple récupération de valeur d'une fonction js
- Fonction si et - Guide
- Iphone 14 simple - Guide
- Convertisseur récupération de texte - Guide
- Comment recuperer une video sur youtube - Guide
- Logiciel gratuit calcul valeur nutritionnelle - Télécharger - Santé & Bien-être
2 réponses
Bonjour,
Oui c'est normal puisque le return data.name; de la fonction est propre à la fonction success() de jquery et non pas à la fonction get_name(); d'ou le retour de la valeur undefined
Je te laisse imaginer comment la récupérer :-)
Oui c'est normal puisque le return data.name; de la fonction est propre à la fonction success() de jquery et non pas à la fonction get_name(); d'ou le retour de la valeur undefined
Je te laisse imaginer comment la récupérer :-)
Voici la solution :
var id = "id=1"; var name; // Récupère le nom en fonction de l'id dans la bdd function get_name(){ $.ajax({ type: 'POST', dataType: 'json', url: 'http://sandbox.studio8d.fr/projets/app/serveur/db_queries.php', data: id, success: function(data){ handleData(data.name); // pour permettre à ajax de rester asynchrone on utilise une fonction dite de callback, qui se charge de manipuler le retour serveur une fois qu'il est reçu. }, error: function(){ alert('Erreur de connexion.'); } }); } function handleData(data){ // la fonction de callback sus-citée alert(data); } get_name(); // et l'appelle de la fonction principale