IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

jQuery Discussion :

Retourner la valeur d'une requête ajax, incluse dans une fonction [AJAX]


Sujet :

jQuery

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 81
    Points : 64
    Points
    64
    Par défaut Retourner la valeur d'une requête ajax, incluse dans une fonction
    Bonjour à tous,

    J'interroge une fonction dans laquelle se trouve une requête ajax en Jquery :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    	function queryRoundOn() {
    		let idgame = '<?= $idgame; ?>';
    		// appel ajax :
    		$.ajax({
    			url: 'script.php',
    			method: 'post',
    			data: {queryRoundOn: idgame},
    			dataType: 'html',
    		})
    		.done(function(html) {
    			let reponse = html;
    			alert(reponse);
    			return reponse;
    		});
    	}
     
    	var truc = queryRoundOn();
    	alert(truc);
    Mon premier alert me ramène bien une valeur issue de ma requête Ajax, en revanche, impossible de récupérer cette valeur dans le second alert.

    Y a un truc qui m'échappe...
    Merci pour votre aide précieuse ^^

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 235
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 235
    Points : 15 532
    Points
    15 532
    Par défaut
    les requêtes http se font de façon asynchrone donc vous pouvez seulement récupérer la valeur dans le "done".
    vous pouvez faire comme cela par exemple :
    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    	function queryRoundOn()
    	{
     
    		$.ajax(...)
    		.done(function (html) {
    			traitement_reponse(html);
    		});
     
    	}
     
     
    	function traitement_reponse(reponse_html)
    	{
     
    		alert(reponse_html);
     
     
    	}
     
     
    	queryRoundOn(); // lancement de la requête

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 81
    Points : 64
    Points
    64
    Par défaut
    Merci @Mathieu

    Tes explications m'ont orienté vers Node.js et Socket.io.
    Je me suis appuyé beaucoup trop sur des requêtes ajax et me disais bien qu'il existait une solution de "discussions" du serveur vers le client (navigateur) qui soulagerait le serveur.
    Jusqu'ici j'utilisais Jquery dans mes projets sans me soucier des appels répétitifs mais ce projet est un jeu collaboratif qui nécéssite de la réactivité entre les joueurs..
    Un nouveau monde et langage s'ouvre à moi !

    Un grand merci pour ces infos, je progresse !!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Retourner deux valeurs d'une fonction
    Par Skz69 dans le forum Débuter
    Réponses: 25
    Dernier message: 23/10/2019, 19h22
  2. Impossible de retourner la valeur d'une fonction personnalisée sur Excel
    Par abdelben93 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 10/05/2019, 08h10
  3. comment retourner 2 valeurs avec une fonction
    Par aminebakr dans le forum Langage
    Réponses: 14
    Dernier message: 27/06/2017, 11h58
  4. [XL-2007] Retourner la valeur d'une fonction sur une colonne
    Par renaudjean dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 04/10/2013, 01h27
  5. Retourner plusieurs valeurs a une fonction ajax
    Par Hyuge dans le forum jQuery
    Réponses: 2
    Dernier message: 11/06/2009, 15h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo