Avatar billede sun Nybegynder
05. august 2004 - 11:50 Der er 11 kommentarer og
1 løsning

Var fra xml til flash

Jeg kan ikke finde ud af hvordan jeg sætter en var. navn fra en xml fil, kan kun sætte værdi.

------------------------------------
var external_xml:XML = new XML();
external_xml.ignoreWhite = true;
external_xml.load("test.xml");
external_xml.onLoad = function(success:Boolean) {
    if (success) {
        trace("xml loaded successfully.");
        trace(external_xml);
        trace("number of children:"+this.firstChild.childNodes.length);
        for (var i = 0; i<this.firstChild.childNodes.length; i++) {
            var thisNode:XMLNode = this.firstChild.childNodes[i];
            trace(thisNode.nodeName+"="+thisNode.attributes.value); /denne virker i output
            thisNode.nodeName = thisNode.attributes.value; /hvordan for jeg denne til at virke?
        }
    } else {
        trace("xml failed to load.");
    }
};
Avatar billede nikolajdu Nybegynder
05. august 2004 - 11:53 #1
thisNode.nodeName = thisNode.attributes["navn"];

??
Avatar billede sun Nybegynder
05. august 2004 - 12:29 #2
Nej, ikke helt, jeg har et textfield som holder variable "name" nu vil jeg hvade min xml til at lave den og værdien.

name = "pia"
trace(thisNode.nodeName+"="+thisNode.attributes.value);  det viser denne i output rigitg nok...
thisNode.nodeName = thisNode.attributes.value; det virker jo ikke? hvordan så?
Avatar billede sun Nybegynder
05. august 2004 - 12:31 #3
ok mere rigtig sagt, hvordan taget jeg noget fra en xml fil og bruger det til at lave navnet på min variable?
Avatar billede nikolajdu Nybegynder
05. august 2004 - 12:47 #4
name = thisNode.attributes["name"];

<xml name="pia" />

??
Avatar billede sun Nybegynder
05. august 2004 - 13:02 #5
prøv at bytte rundt...

X = "pia"
Det er X som skal hentes fra xml koden! men det virker ikke hvis jeg sætter thisNode.nodeName som X
Avatar billede nikolajdu Nybegynder
05. august 2004 - 14:10 #6
så er det vel den forkerte node - Hvordan ser dine xml ud?
Avatar billede sun Nybegynder
05. august 2004 - 14:28 #7
jeg tror ikke man kan det jeg vil, variable har et navn og en værdi "navn = værdi" og man kan vel ikke tage og lave både navn og værdi på en ny variable fra xml???
Avatar billede nikolajdu Nybegynder
05. august 2004 - 15:20 #8
Hvordan ser din xml ud?
Avatar billede sun Nybegynder
06. august 2004 - 10:31 #9
Det hele er kun test kode, men det som jeg godt vil er at swf/flash ikke skal vide på forhånd hvor mange navn der er, det vil sige at den lave variable efter jo flere name der er. hvis du kigge i output for denne kode, sådan vil jeg også havde den til at gøre rigtig

var users_xml:XML = new XML();
users_xml.parseXML('<user><name1 value="pia" /><name2 value="han" /><name3 value="per" /></user>');
for (var i = 0; i<users_xml.firstChild.childNodes.length; i++) {
  var thisNode:XMLNode = users_xml.firstChild.childNodes[i];
  trace(+thisNode.nodeName+"="+thisNode.attributes.value);
}
Avatar billede nikolajdu Nybegynder
06. august 2004 - 10:44 #10
Det kan godt være jeg ikke er klog ;-9

Jeg forstår bare ikke dit problem når nu du du kender længden og kan trace de rigtige værdier. Er det fordi du vil have name1, name2 over i variabler og ditto med værdien?


var nodeNavn[i] = new Array;
var nodeVaerdi[i] = new Array;
var external_xml:XML = new XML();
external_xml.ignoreWhite = true;
external_xml.load("test.xml");
external_xml.onLoad = function(success:Boolean) {
    if (success) {
        trace("xml loaded successfully.");
        trace(external_xml);
        trace("number of children:"+this.firstChild.childNodes.length);
        for (var i = 0; i<this.firstChild.childNodes.length; i++) {
            var thisNode:XMLNode = this.firstChild.childNodes[i];
            nodeNavn[i] = thisNode.nodeName;
            nodeVaerdi[i] = thisNode.attributes.value;
        }
    } else {
        trace("xml failed to load.");
    }
};
Avatar billede sun Nybegynder
06. august 2004 - 13:21 #11
Det er ikke dig som ikke er klog, men mig som ikke kan forklare mig.... men jeg kan faktisk komme ude om det med et array på den måde du har lave det, så super... smid et svar :-)
Avatar billede nikolajdu Nybegynder
06. august 2004 - 13:24 #12
Jamen fint det lykkedes :))
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester