jQuery .ajax, utiliser les 'datas' hors fonction

Par dotMastaz, il y a 14 ans


Bonjour,

Je fais appel à .ajax pour charger de l'Xml et utilise jquery pour mettre en page
ces données avec la méthode suivante :
$.ajax( {
type: "GET",
url: "xml/data.xml",
dataType: "xml",
success: function(xml) {
$(xml).find.....
}
});

Tout fonctionne correctement, mais comment utiliser ces données dans une autre fonction. Je précise que cette fonction est appelée lors d'un évènement.

Mais même essayé d'appeler 2 fois le $ajax avec ce fichier, mais les données étaient 'doublée' (si vous voyez ce que je veux dire) !

Une piste ...

Merci

4 réponses

MrGuillou, il y a 14 ans

Bonjour,
Normalement tu a juste à appeler ta fonction dans success

success : maFonction(xml),

dotMastaz, il y a 14 ans

Euh, merci pour ta réponse, mais tu as vu que c'était déjà le cas.

Ce que je souhaite faire, c'est d'utiliser ces données en dehors et en plus du succes :

function myfnct() {

$(xml).find.....

}

Grafikart, il y a 14 ans

Je ne comprend pas trop ce que tu veux dire par en dehors.

dotMastaz, il y a 14 ans

En fait j'avais déjà trouvé, mais j'avais du merdé ;-)
Et voici le résultat :

//créé la variable
var xmlDoc = null;

Chargé le fichier
$.ajax( {

type: "GET",
url: "xml/projet_bis.xml",
dataType: "xml",
success: function(xml) {

//remplir la variable
xmlDoc = $(xml);
appeler la fonction
mydata();

}

});

//la fonction
function mydata() {

if (xmlDoc) { ...}
}

//la focntion2 appelée depuis un event
function mydata() {

if (xmlDoc) { ...}
}