Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 29-01-2006, 18:44   #1 (permalink)
Noobster
 
Registriert seit: May 2005
Beiträge: 107
XML to Array problem

Hi zusammen,

also ich parse ein XML file welches so aussieht:
Code:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<root>
	<farben>
		<farbe1>ffffff</farbe1>
		<farbe2>009098</farbe2>
		<farbe3>123456</farbe3>
		<farbe4>654321</farbe4>
		<farbe5>000000</farbe5>
		<farbe6>132457</farbe6>
	</farben>
	<schriftart>
		<s1>Arial</s1>
		<s2>Times New Roman</s2>
		<s3>Impact</s3>
		<s4>Verdana</s4>
		<s5>Tahoma</s5>
		<s6>Courier New</s6>
	</schriftart>
	<schriftgroesse>
		<g1>20</g1>
		<g2>24</g2>
		<g3>26</g3>
		<g4>35</g4>
		<g5>46</g5>
	</schriftgroesse>
</root>
so dann mach ich folgendes in AS:
PHP-Code:
var myxml = new XML();
myxml.onLoad geladen;
myxml.ignoreWhite true;

myxml.load("farben.xml");

liste = [[],[]];

function 
geladen(ok){
    
    if(
ok){
        var 
laenge myxml.firstChild.childNodes.length;
        for(var 
i=0i<laengei++){
            
            
laenge_innen myxml.firstChild.childNodes[i].childNodes.length;
            
            for(var 
j=0j<laenge_innenj++){
                
liste[i][j] = String(myxml.firstChild.childNodes[i].childNodes[j].firstChild.nodeValue);
trace(liste[i][j]);
            }
        }
    }else{
        
trace("Nö");
    }

und bekomme aber dann in meinem array die letzen nodeValues vom child "schriftgroesse" nichtmehr angezeigt. wenn ich das gesamte array trace dann heißt es bei den schriftgroesse werten "undefined".
siehe hier:
PHP-Code:
ffffff
009098
123456
654321
000000
132457
Arial
Times 
New Roman
Impact
Verdana
Tahoma
Courier 
New
undefined
undefined
undefined
undefined
undefined 
meiner meinung nach hab ich absolut keinen fehler im code??!!!! oder es ist einfach schon zu spät und ich seh ihn nichtmehr. aber eigentlich müßte doch die liste komplett gefüllt werden?? wenn mir jemand weiterhelfen könnte wäre ich sehr dankbar.

Gruß,

Mo...
Motionguru ist offline   Mit Zitat antworten
Alt 29-01-2006, 19:01   #2 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.324
liste = [[],[],[]];
oder
Code:
liste = [];
var mfc1 = myxml.firstChild.childNodes;
var len1 = mfc1.length;
for (var i = 0; i<len1; i++) {
	var mfc2 = mfc1[i].childNodes;
	var len2 = mfc2.length;
	var ll=liste[i] = [];
	for (var j = 0; j<len2; j++) {
		ll[j] = String(mfc2[j].firstChild);
		// trace(liste[i][j]);
	}
}
und durchnummerieren ist nicht im sinne von XML
<farben>
<farbe>ffffff</farbe>
<farbe>009098</farbe>
<farbe>123456</farbe>
<farbe>654321</farbe>
...
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de

Geändert von hgseib (29-01-2006 um 19:09 Uhr)
hgseib ist offline   Mit Zitat antworten
Alt 30-01-2006, 07:11   #3 (permalink)
Noobster
 
Registriert seit: May 2005
Beiträge: 107
ok danke.
ich werds mal ausprobieren.

gruß,


Mo...
Motionguru ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 13:49 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele