J'écris une application en javascript et je n'arrive pas à comprendre comment accéder aux variables déclarées dans ma fonction, à l'intérieur de cette analyse jquery. À l'intérieur, je peux accéder aux variables globales, mais je ne veux pas vraiment créer de variables globales pour ces valeurs.Comment puis-je accéder aux variables en dehors de la portée actuelle en javascript?
Fondamentalement, je veux extraire les noms de fichiers d'un document XML dans la variable simulationFiles
. Je vérifie si l'attribut de noeud est égal à simName
et extrait les deux chaînes à l'intérieur des éléments xml, cette partie je pense que cela fonctionne.
Comment puis-je extraire ces éléments xml et les ajouter à des variables locales?
function CsvReader(simName) {
this.initFileName = "somepath";
this.eventsFileName = "somepath";
$(simulationFiles).find('simulation').each(function() {
if ($(this).attr("name") == simName) {
initFileName += $(this).find("init").text();
eventsFileName += $(this).find("events").text();
}
});
}
Thx pour la réponse rapide, mais malheureusement, cela ne fonctionne pas. En fait, je l'ai essayé aussi auparavant, mais à l'intérieur de la fonction sans nom, le $ self est signalé comme non défini par firebug. – sekmet64
Cela fonctionne comme ça! Désolé à ce sujet, quand j'ai sauvé le ceci à une variable j'ai eu une erreur différente après cet appel de fonction et quand j'ai débogué le débogueur m'a montré que $ self.initFileName est indéfini à l'intérieur, mais réellement fonctionnait et et j'ai obtenu le résultat. Merci beaucoup! – sekmet64
Vos 'this.initFileName' et' this.eventsFileName' sont-ils censés être locaux à votre fonction ou à la page entière? Nm ... a vu votre message quelques secondes plus tard. Content que ça marche! –