Zurück   Flashforum > Flash und Server > Flash mit XML und Webservices

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 28-09-2008, 20:46   #1 (permalink)
Neuer User
 
Registriert seit: Jul 2008
Beiträge: 14
Exclamation XML-Daten in ein MC laden?

Hallo zusammen,

ich möchte gerne Daten die ich aus einem XML-Doku geladen habe in Dynamischen Textfeldern anzeigen lassen die sich in einem Movieclip befinden. Es funktioniert nur nicht wenn ich folgenden Code ohne Movieclip benutze funktioniert es. Könnt ihr mir vielleicht helfen? Hier ist der AS Code
Code:
stop();  

var XMLdaten = new XML();  
XMLdaten.ignoreWhite=true;  
XMLdaten.load("test.xml");  
XMLdaten.onLoad = function(success) {  
    if(success){ 
        anzahl = XMLdaten.firstChild.childNodes.length; //liest die anzahl der elemente aus!  
        trace("anzahl="+anzahl); 
        anz = []; //neues array  
        for (var i=0; i<anzahl; i++) {  
            var knoten = XMLdaten.firstChild.childNodes[i]; 
            trace("\nknoten="+knoten); 
             
            var knotenlänge = knoten.childNodes.length; 
            trace("knotenlänge="+knotenlänge); 

            anz[i] = new Array();//mehrdimensionales Array 
            for(var j=0;j<knotenlänge;j++){ 
                anz[i][j] = knoten.childNodes[j].attributes.anzeige; 
                trace("anz["+i+"]["+j+"]="+anz[i][j]); 
                _root["meineTextfeldInstanz"+i+j].text = anz[i][j]; 
            } 
             
        }  
        this.gotoAndstop(2);  
    } 
}
Tausend Dank vorab!
n8art.de ist offline   Mit Zitat antworten
Alt 29-09-2008, 02:04   #2 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.326
_root["meineTextfeldInstanz"+i+j].text

du musst natürlich anstatt _root den pfad zu deinem mc angeben.

+i+j ist problematisch, weil so z.b. i=1, j=11 das selbe ist wie i=11, j=1
trenne die nummern mit z.b. "_"
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de
hgseib ist offline   Mit Zitat antworten
Alt 29-09-2008, 14:37   #3 (permalink)
Neuer User
 
Registriert seit: Jul 2008
Beiträge: 14
Das habe ich bereits vermutet allerdings weiß ich nicht wie ich das in schrift und form bringe angenommen das MC heist "Test" wie setzte ich das dann um?
n8art.de ist offline   Mit Zitat antworten
Alt 30-09-2008, 19:14   #4 (permalink)
Neuer User
 
Registriert seit: Jul 2008
Beiträge: 14
Ich habe es nun so versucht allerdings hat es nicht geklappt. der MC mit dem instanz name "clip" bleibt leer? Was mache ich falsch?
Code:
stop();  

var XMLdaten = new XML();  
XMLdaten.ignoreWhite=true;  
XMLdaten.load("test.xml");  
XMLdaten.onLoad = function(success) {  
    if(success){ 
        anzahl = XMLdaten.firstChild.childNodes.length; //liest die anzahl der elemente aus!  
        trace("anzahl="+anzahl); 
        anz = []; //neues array  
        for (var i=0; i<anzahl; i++) {  
            var knoten = XMLdaten.firstChild.childNodes[i]; 
            trace("\nknoten="+knoten); 
             
            var knotenlänge = knoten.childNodes.length; 
            trace("knotenlänge="+knotenlänge); 

            anz[i] = new Array();//mehrdimensionales Array 
            for(var j=0;j<knotenlänge;j++){ 
                anz[i][j] = knoten.childNodes[j].attributes.anzeige; 
                trace("anz["+i+"]["+j+"]="+anz[i][j]); 
                this.clip.["meineTextfeldInstanz"+i+j].text = anz[i][j]; 
            } 
             
        }  
        this.gotoAndstop(2);  
    } 
}
n8art.de ist offline   Mit Zitat antworten
Alt 01-10-2008, 06:14   #5 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.326
this.clip.["meineTextfeldInstanz"+i+j].text = anz[i][j];

sachen immer mit trace testen oder mit dem debugger


entweder punkt oder [] niemals beides zusammen!
this.clip.[" <-- falsch
this.clip[" <-- möglich
this.ciip.meine... <-- möglich

this ist im XMLdaten-objekt natürlich XMLdaten und XMLdaten hat bestimmt kein mc mit dem namen clip. also das kann der pfad nicht sein. der könnte z.b. so aussehen:
_root.clip["meineTextfeldInstanz"+i +"_"+ j].text = anz[i][j];

und nochmals die empfehlung nicht i+j zu benützen. und teste im programm, ob es das textfeld überhaubt gibt, in das du reinschreiben willst. am besten, sowas via programm erzeugen.
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de

Geändert von hgseib (01-10-2008 um 06:18 Uhr)
hgseib 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 04:14 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele