sicarius Je trompe énormément ... | Bonjour,
désolé pour le titre pas très clair, mais je fais mes premiers pas en JavaScript et je suis pas sûr de bien avoir compris son fonctionnement.
Je travaille sur GoogleMaps : j'ai des marqueurs qui représentent des arrêts de bus.
Quand on clique sur un marqueur ça fait appel à un Web Service qui renvoie les prochains bus qui vont passer à l'arrêt cliqué.
Donc dans mon GEvent.addListener (ça permet de réagir au clic sur un marqueur) j'appelle la fonction connexionWS (dont le code est présenté ci dessous) qui se connecte au web service. Le soucis c'est que je ne parviens pas à faire retourner cette fonction : j'aimerais qu'elle me retourne un tableau d'Arrets*, mais malgré toutes mes tentatives je me retrouve avec un 'undefined' en retour.
Pourtant quand je fais un alert dans la fonction connexionWS, les infos sont bien là, c'est juste que j'arrive pas à les voir en dehors de la fonction.
Si quelqu'un a une idée Le code en question :
Code :
- function connexionWS(adressews)
- {
- var req = GXmlHttp.create();
- req.open("GET", adressews, true);
- req.onreadystatechange = function()
- {
- if (req.readyState === 4 && req.status < 299)
- {
- var docXml = GXml.parse(req.responseText);
- // on crée des variables de type Array, qui recoivent comme valeur les balises choisies dans le document xml
- var destination = docXml.getElementsByTagName('ax21:codGirouette');
- var min = docXml.getElementsByTagName('ax21:horaire');
- var ligne = docXml.getElementsByTagName('ax21:nuLiCo');
- var service = docXml.getElementsByTagName('ax21:vehicule');
- var numParc = docXml.getElementsByTagName('ax21:parc');
- var tabloArrets = new Array();
- for (var n = 0; n < min.length; n++)
- {
- var unArret = new Arret (destination[n].firstChild.nodeValue, min[n].firstChild. nodeValue, ligne[n].firstChild.nodeValue, service[1].firstChild.nodeValue, numParc[1]. firstChild.nodeValue) ;
- tabloArrets[n] = unArret ;
- }
- }
- }
- req.send(null);
- }
|
PS A noter qu'il n'y a aucun return dans ce code, mais j'ai bien entendu essayé avec
* en fait l'objet Arret est mal nommé : il décrit un passage de bus à un arrêt donné. ---------------
Freenet *** Mon Feed-Back reloaded
|