L'unico modo che ho trovato per rendere globali delle variabili ottenute con Ajax è inserirle in campi input nascosti e recuperarle all'occorrenza. Soluzione poco elegante e macchinosa, non linciatemi.
Scusate eventuali errori, ho scritto di getto questo esempio.
Ciao
codice:function DataCall(){ $.ajax({ type: "POST", url: "il mio url", data: "i miei dati", dataType: "html", success: function(data){ MyData(data); return data; }, error: function() { alert('errore'); } }); } function MyData(data){ var data = jQuery.parseJSON(data); var nome = (data.nome); var cognome = (data.cognome); $('#nome').val(nome); $('#cognome').val(cognome); Recupera(); }; function Recupera(){ //riprendo i miei dati e li inserisco in variabili globali nome = document.getElementById('nome').value; cognome = document.getElementById('cognome').value; }; function(){ //utilizzo i miei dati dove voglio $('<div>Nome: '+nome+' Cognome: '+cognome+'</div>').dialog(); // e se voglio li aggiorno $.ajax({ type: "POST", url: "il mio url", data: "nome="+nome+"&cognome="+cognome, dataType: "html", success: function(){ //richiamo i miei dati aggiornati DataCall(); }, error: function() { alert('errore'); } }); }

Rispondi quotando