|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre expérimenté
![]() Développeur informatique Inscription : juin 2007 Messages : 299 ![]() |
Bonjour, je me casse la tête sur quelque chose de sans doute très simple, mais je débute en JS et je vois vraiment pas !
J'ai donc une fonction connexionWS qui se connecte à un Web Service et qui utilise GXmlHttp (api Google Maps) au lieux de XmlHttpRequest (mais bon c'est la même chose). J'aimerais que cette fonction me retourne un tableau d'objets qui sera créé là où j'ai mis le commentaire (je vous épargne le reste du code, ça n'apporte rien de plus). Le soucis c'est que quelque soit l'endroit où je déclare mon tableau et mon return j'obtiens une valeur undefined lors que je récupère ça en dehors de la fonction, alors qu'un alert au sein de la fonction me donne les bonnes données retournées par mon Web Service. Toute suggestion sera la bienvenue, et accessoirement si vous avez un tuto / exemple qui explique à fond la visibilité des variables en JS je suis preneur ! Merci Code :
__________________
The greatest shortcoming of the human race is our inability to understand the exponential function. Albert A. Bartlett La plus grande lacune de la race humaine c'est notre incapacité à comprendre la fonction exponentielle. |
||
|
|
00
|
|
|
#2 |
|
Membre habitué
![]() Inscription : mai 2007 Messages : 149 ![]() |
Ce que je ferais, ça serait de modifier le fichier 'adressews' pour qu'il me renvoie un fichier xml contenant le résultat de la requête, puis de le parser dans la fonction en javascript pour en récupérer le résultat, et le mettre dans un tableau.
Ce tutoriel est très simple et très bien expliqué pour commencer en Ajax. |
|
|
00
|
|
|
#3 | ||
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 828 ![]() |
C'est à toi de construire ton tableau à partir de la réponse reçue, soit en text, soit en XML voire en JSON.
Citation:
>keul85 Citation:
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
||
|
00
|
|
|
#4 | ||
|
Membre expérimenté
![]() Développeur informatique Inscription : juin 2007 Messages : 299 ![]() |
Je crois qu'on s'est mal compris : le paramètre adressews c'est l'adresse ip du Web Service.
Donc cette fonction se connecte au Web Service et récupère un fichier XML. Je parse ce fichier et le colle dans un tableau d'objets, mais le problème c'est comment renvoyer ce tableau d'objets en dehors de ma fonction connexionWS. Exemple : Code :
__________________
The greatest shortcoming of the human race is our inability to understand the exponential function. Albert A. Bartlett La plus grande lacune de la race humaine c'est notre incapacité à comprendre la fonction exponentielle. |
||
|
|
00
|
|
|
#5 |
|
Membre habitué
![]() Inscription : mai 2007 Messages : 149 ![]() |
Il n'y en a pas forcément, mais j'ai toujours fais comme ça. A savoir que le fichier qui était appelé (dans son cas, ce serait adressews) se connectait à la base de données puis me renvoyait un fichier xml qui contenait le résultat (via la fonction echo de php.
Donc la solution a son problème selon moi était de modifier le fichier appelé (adressews) pour qu'il renvoie un fichier xml. @jmnicolas : Effectivement, on a du mal se comprendre. Pour ta réponse, il me semble que déclarer ton tableau à l'extérieur de la fonction devrait te permettre de le réutiliser dans d'autres fonctions. |
|
|
00
|
|
|
#6 | |
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 828 ![]() |
Citation:
une variable déclarée hors de toute fonction est globale, donc utilisable partout dans le script. Attention, il est possible de déclarer une variable globale dans une fonction (déclaration de type maVariable=... au lieu de var maVariable=...) mais cela est particulièrement déconseillé car il peut ensuite y avoir de gros risques d'écrasement.
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
|
|
00
|
|
|
#7 | |||
|
Membre expérimenté
![]() Développeur informatique Inscription : juin 2007 Messages : 299 ![]() |
Citation:
Voici donc le code complet (du moins un des nombreux essais) : Code :
A noter que chaque "passage de bus" est stocké dans un objet Arret, c'est pas très parlant, mais en fait dans le Web Service, Arret est un objet Java qui est utilisé pour décrire pas mal de trucs différents.
__________________
The greatest shortcoming of the human race is our inability to understand the exponential function. Albert A. Bartlett La plus grande lacune de la race humaine c'est notre incapacité à comprendre la fonction exponentielle. |
|||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com