webForumDet fria alternativet

Läsa XML fil problem.

2 svar · 361 visningar · startad av UrMe

UrMeMedlem sedan apr. 2001762 inlägg
#1

Varför fungerar inte detta:

var texter = new XML();
texter.ignoreWhite = true;
texter.onLoad = function(success){
	if (success) {
		var argh = "asd";
		trace("Jepp");
	}
	else {
		trace("Error loading XML file");
	}
}
trace(argh);
texter.load("asd.xml");
link1.text = argh;

Den skriver ut "Jepp", men variablen "argh" blir undefined. Tanken är ju att jag ska hämta en text från xml filen men tog bort den snutten i if-satsen bara för att se om variabeln kan få något värde överhuvudtaget, men det verkar inte fungera.

nitro2k01Medlem sedan aug. 20039 342 inlägg
#2

Det beror på att argh definieras inne i if-satsen och därmed finns den bara i det "scopet". Dessutom: onload-funktionen kommer att kallas först efter att xml-filen har laddats in. Och eftersom du anropar trace(argh); innan du anropar load kan detta aldrig ske. Och eftersom detta är en asynkronb request så bör du lägga allt det där i onload-funktionen.

var texter = new XML();
texter.ignoreWhite = true;
texter.onLoad = function(success){
    if (success) {
        trace("Jepp");
        link1.text = argh;
    }
    else {
        trace("Error loading XML file");
    }
}
texter.load("asd.xml");
UrMeMedlem sedan apr. 2001762 inlägg
#3

Ah tackar!

131 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)