Sauver le résultat d'un $.get dans une variable JS
Swiss Knight
Messages postés
2257
Statut
Membre
-
Utilisateur anonyme -
Utilisateur anonyme -
Salut,
Je souhaite enregistrer le résultat d'un $.get jQuery d'une url d'un serveur cartographique dans une variable javascript mais je n'y arrive pas, c'est désespérément vide dans la console...
Voici le bout de code JS qui me pose problème, ce sera plus parlant :
Résultat du console.log : undefined.
Merci d'avance.⁹
Je souhaite enregistrer le résultat d'un $.get jQuery d'une url d'un serveur cartographique dans une variable javascript mais je n'y arrive pas, c'est désespérément vide dans la console...
Voici le bout de code JS qui me pose problème, ce sera plus parlant :
var url = "localhost:8080/geoserver/layers/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=layers:macouche&maxFeatures=50&outputFormat=application%2Fjson";
var geojsonData;
$.getJSON( url, function( data ) {
geojsonData = data;
});
console.log(geojsonData);
Résultat du console.log : undefined.
Merci d'avance.⁹
2 réponses
-
Bonjour
Tu essayes d'afficher la variable avant qu'elle ne soit initialisée.
Quand tu fais un appel à $.getJSON, tu définis la fonction function( data ) mais elle n'est pas appelée immédiatement : elle ne sera appelée que plus tard, quand la requête indiquée dans l'url aura reçu sa réponse.
Et toi tu demandes à afficher geojsonData aussitôt après l'appel à $.getJSON : c'est trop tôt.
Il faut attendre la réponse à la requête.
Il tu suffit de faire l'affichage à l'intérieur de la function( data ), immédiatement après avoir faitgeojsonData = data;
. Là, tu es sûr que la variable est définie.
le père. (Puisque ce !#é|?§ de forum ne sait plus gérer les accents dans les pseudos) -
Salut,
si tu fait console.log(data) ???
Je ne sais pas si cela est normal mais l'url pointe sur localhost. Dans tout les case j'ajouterais à ta place le http://