Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    usare il valore di variabili fuori dalla funzione

    Ciao,
    premetto che sono un pò scarsa con javascript, quindi spero di esporre bene la domanda.

    Devo estrarre da un file xml le coordinate di un punto.
    All'interno della funzione vengono memorizzate correttamente le coordinate che mi interessano ma poi non riesco a utilizzarle fuori.

    Ecco il codice:

    codice:
      if(prov != null)
    		{
    		var provviaurl = prov;
    
    		downloadUrl("marker_2011.xml", function(doc) {
            	var xmlDoc = xmlParse(doc);
            	var markers = xmlDoc.documentElement.getElementsByTagName("marker");
            	for (var i = 0; i < markers.length; i++) {
              	// obtain the attribues of each marker
    				provinciaa = markers[i].getAttribute("pro");
    				if(provinciaa == provviaurl)
    					{
              			latt = parseFloat(markers[i].getAttribute("lat"));
              			lngg = parseFloat(markers[i].getAttribute("lng"));
                                    alert(latt);
    					}
            		}
    		 	});
    
      		latit = latt;
    		longit = lngg;
      		}
      
      else {
      		latit = 42.745334;
    		longit = 12.738430;
    		}
    L'alert alert(latt); visualizza correttamente la variabile latt, ma poi non riesco a memorizzarla in nessun modo nella variabile esterna latit!
    Ho provato con return ma senza successo e ora, dopo tanti tentativi non ho più idee.

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    latit = latt;
    longit = lngg;

    devi metterle all'interno della function , due righe piu' sopra, dopo

    latt = parseFloat(markers[i].getAttribute("lat"));
    lngg = parseFloat(markers[i].getAttribute("lng"));

    altrimenti il loro valore si perde uscendo dalla funzione stessa
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Ho provato col metodo che mi hai suggerito ma senza successo.
    Disperata, alla fine ho cambiato tutto seguendo un'altra strada.
    Grazie comunque della risposta, Br1.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.