Trasporto variabile da una funzione all'altra

fradamma

Utente Attivo
28 Set 2012
93
0
0
Ciao a tutti e buon inizio settimana.
Chiedo aiuto per poter fare il matching(paragone) tra due file xml. Prima di tutto, dopo una chiamata $.ajax, ho constatato che devo poter "trasportare" la mia variabile/oggetto all'interno di una function, ma non ci riesco. Tutto questo perchè all'interno della nuova funzione richiamerò il secondo file e incrocerò i dati dei 2 xml/json.
Ps. Utilizzo il plugin xml2json per trasformare l xml in json.

Codice:
        $.ajax({
		url: results_Url,  //qui c'è l url del file xml che devo renderizzare
		type: 'GET',
		dataType: 'xml',
		success: function(data, textStatus, xhr) {
			//console.log(data);
			resultsXml = $.xml2json(data); //questa è la chiamata al plugin che converte l'xml in un json
			console.log(resultsXml); //qui vedo l'oggetto json che mi serve
		},
		error: function(data) {
		}
	});

console.log(resultsXml); //qui NON vedo l'oggetto json che mi serve

function renderSecondXml(json){
    //devo riuscire a portare la variabile "resultsXml" qui dentro per fare il matching con un secondo xml
console.log(resultsXml); //qui NON vedo l'oggetto json che mi serve
     var json = xml1;
     var resultsXml = xml2;

}

Spero di essermi spiegato. Grazie a tutti e buon pomeriggio.
 
Ragazzi nessuno mi aiuta, please.... cmq ho capito che una variabile all'interno di una chiamata ajax fuori darà sempre "undefined" perchè la chiamata è asincrona. Però il problema sussiste: come faccio a vedere il mio oggetto json anche all'interno di una terza funzione (e in generale fuori dalla chiamata ajax)?
 
Ciao, devi dichiararla al di fuori delle funzioni, esempio
Codice:
<script>
    var prova;
    function setta() {
        prova = "quello che vuoi";
    }
    function stampa() {
        alert(prova);
    }
    setta();
    stampa();
</script>
 

Discussioni simili