| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Rock'n'Bass Registriert seit: Feb 2006 Ort: Hamburg
Beiträge: 202
|
Hallo, ich habe folgendes Problem: Ich erstelle in Flash gerade eine Seite zur Präsentation von einigen Produkten. Nun habe ich eine XML-Datei, aus der ich Daten über das Produkt in Flash rein laden lasse (Titel, Fakten und Beschreibung). Insgesamt sind 5 Produkte aus der XML-Datei zu lesen. An der Stelle des AS-Codes in Flash, wo die anzahl der Produkte ermittelt wird, die sich in der XML-Datei befinden (siehe Code unten), frage ich per trace genau diese Anzahl ab. Nur komischerweise zählt es nur 1 (!) Element! Dabei sind es doch 5! ... WO IST HIER DER FEHLER?? (vielleicht bin ich auch einfach nur blind gerade... )- - - - - - XML-File: Code: <?xml version='1.0' encoding='utf-8'?>
<knoten>
<kindknoten
prtitel="Produkt 1"
facts="Fakten zu Produkt 1"
beschr="Beschreibung zu Produkt 1" />
</knoten>
<knoten>
<kindknoten
prtitel="Produkt 2"
facts="Fakten zu Produkt 2"
beschr="Beschreibung zu Produkt 2" />
</knoten>
<knoten>
<kindknoten
prtitel="Produkt 3"
facts="Fakten zu Produkt 3"
beschr="Beschreibung zu Produkt 3" />
</knoten>
<knoten>
<kindknoten
prtitel="Produkt 4"
facts="Fakten zu Produkt 4"
beschr="Beschreibung zu Produkt 4" />
</knoten>
<knoten>
<kindknoten
prtitel="Produkt 5"
facts="Fakten zu Produkt 5"
beschr="Beschreibung zu Produkt 5" />
</knoten> Code: stop();
var XMLpopup = new XML();
XMLpopup.ignoreWhite=true;
XMLpopup.load("XMLpopup.xml");
XMLpopup.onLoad = function(success) {
anzahl = XMLpopup.firstChild.childNodes.length;
trace(anzahl);
XMLpopup_prtitel = [];
XMLpopup_facts = [];
XMLpopup_beschr = [];
for (var i=0; i<anzahl; i++) {
XMLpopup_prtitel[i] = XMLpopup.firstChild.childNodes[i].attributes.prtitel;
XMLpopup_facts[i] = XMLpopup.firstChild.childNodes[i].attributes.facts;
XMLpopup_beschr[i] = XMLpopup.firstChild.childNodes[i].attributes.beschr;
}
gotoAndStop(2);
}
__________________ ==>remix.nin.com<== // Life Is Too Short For Boring Music! Fantasie ist die einzige Waffe gegen die Wirklichkeit. Geändert von <sVkVmVit> (22-02-2011 um 09:29 Uhr) |
| | |
| | #2 (permalink) |
| Inventar Registriert seit: Jul 2002
Beiträge: 6.882
|
mach um deine Knoten mal noch ein Tag drumherum z.B. Code: <test>
<knoten>
<kindknoten />
</knoten>
<knoten>
<kindknoten />
</knoten>
<knoten>
<kindknoten />
</knoten>
</test>
__________________ (\__/) (='.'=) (")_(") |
| | |
| | #3 (permalink) |
| Rock'n'Bass Registriert seit: Feb 2006 Ort: Hamburg
Beiträge: 202
|
Oh.. okay es funktioniert! zumindest wird per trace jetzt 5 ausgegeben, wie es sein soll. Dann sollte ich ja jetzt auch alle Elemente des XML in Flash ansprechen können. War also nur ne Verschachtelungssache, okay. VIELEN DANK dir schonmal!
__________________ ==>remix.nin.com<== // Life Is Too Short For Boring Music! Fantasie ist die einzige Waffe gegen die Wirklichkeit. |
| | |
| | #4 (permalink) |
| Inventar Registriert seit: Jul 2002
Beiträge: 6.882
|
DuU hast versucht mit firstChild.childNodes auf die Elemente zuzugreifen obwohl du kein firstCild hattest ( daher "knoten" war dein firstChild und "kindknoten" deine childNodes mit Anzahl eben = 1 ). Alternativ wäre aber childNodes alleine auch gegangen.
__________________ (\__/) (='.'=) (")_(") Geändert von Nightflyer (22-02-2011 um 09:55 Uhr) |
| | |
| | #5 (permalink) |
| Rock'n'Bass Registriert seit: Feb 2006 Ort: Hamburg
Beiträge: 202
|
ah genau, das wäre dann noch meine ergänzende frage gewesen, wie ich es sonst gelöst hätte. stimmt, hast recht. macht auf jeden fall sinn jetzt. ist ja auch immer besser, gleich genau zu wissen, wieso es nicht geklappt hat, damit mans nächstes mal schneller erfasst. in diesem sinne nochmals danke für die ergänzende erklärung.
__________________ ==>remix.nin.com<== // Life Is Too Short For Boring Music! Fantasie ist die einzige Waffe gegen die Wirklichkeit. |
| | |
| | #6 (permalink) |
| Rock'n'Bass Registriert seit: Feb 2006 Ort: Hamburg
Beiträge: 202
|
Ööööhm... leider gibt's noch ein weiteres Problemchen.. hab eben son paar Sachen versucht, aber irgendwie ist da noch was falsch. :/ Wollte mal zum test unten nochmal per trace das Titel-Array ausgeben lassen und er wirft aus: "undefined, undefined, undefined, undefined, undefined" okay 5 elemente ist richtig, aber wieso findet er die Titel nicht?? ![]() Code: var XMLpopup = new XML();
XMLpopup.ignoreWhite=true;
XMLpopup.load("XMLpopup.xml");
XMLpopup.onLoad = function(success) {
anzahl = XMLpopup.firstChild.childNodes.length;
trace(anzahl);
XMLpopup_prtitel = [];
XMLpopup_facts = [];
XMLpopup_beschr = [];
for (var i=0; i<anzahl; i++) {
XMLpopup_prtitel[i] = XMLpopup.firstChild.childNodes[i].attributes.prtitel;
XMLpopup_facts[i] = XMLpopup.firstChild.childNodes[i].attributes.facts;
XMLpopup_beschr[i] = XMLpopup.firstChild.childNodes[i].attributes.beschr;
}
trace(XMLpopup_prtitel);
gotoAndStop(2);
}
__________________ ==>remix.nin.com<== // Life Is Too Short For Boring Music! Fantasie ist die einzige Waffe gegen die Wirklichkeit. Geändert von <sVkVmVit> (22-02-2011 um 10:38 Uhr) |
| | |
| | #7 (permalink) | |
| Flash-Designer Registriert seit: May 2006 Ort: Wiesbaden
Beiträge: 6.164
| Zitat:
PHP-Code:
__________________ Viele Grüße // Martin Martin Kraft // Interaktionsdesign Hilfreiche Websites: // Hilfe zur Adobe Flash Plattform // ActionScript 2 Referenz // ActionScript 3 Referenz // ActionScript 3 Arbeitshandbuch // weitere Flash Ressourcen Bitte keine Flashfragen per PM oder Profilnachricht! Dafür ist das Forum da! | |
| | |
| | #8 (permalink) |
| Rock'n'Bass Registriert seit: Feb 2006 Ort: Hamburg
Beiträge: 202
|
Yeah super! Okay danke, jetzt funzt alles so wie es soll. Hab bereits an der richtigen Stelle angesetzt, aber mir ist in dem Moment "firstChild" nicht eingefallen.. manchmal hat man einfach n Brett vorm Kopf. Und ja ich sollte das ganze vllt nochmal etwas vereinfachen. Und das mit der Benennung, das ist jetzt eh nur erstmal zum Test, die Knoten benenne ich auf jeden Fall noch passend - jetzt wo alles läuft kann ich das ja eben mal machen. Alles klar, also danke euch beiden nochmal für die schnellen Antworten! Hat mir echt geholfen! GreeZ ! Nils
__________________ ==>remix.nin.com<== // Life Is Too Short For Boring Music! Fantasie ist die einzige Waffe gegen die Wirklichkeit. |
| | |
| | #9 (permalink) |
| Rock'n'Bass Registriert seit: Feb 2006 Ort: Hamburg
Beiträge: 202
|
Ich denke für die, die das hier jetzt nachträglich noch lesen, sollte ich einmal den verbesserten und korrekten Code posten. Also hier mein aktuelles XML-File und der aktuelle AS-Code dazu: XML: Code: <?xml version='1.0' encoding='utf-8'?>
<seite>
<produkt
prtitel="Produkt 1"
facts="Fakten zu Produkt 1"
beschr="Beschreibung zu Produkt 1" />
<produkt
prtitel="Produkt 2"
facts="Fakten zu Produkt 2"
beschr="Beschreibung zu Produkt 2" />
<produkt
prtitel="Produkt 3"
facts="Fakten zu Produkt 3"
beschr="Beschreibung zu Produkt 3" />
<produkt
prtitel="Produkt 4"
facts="Fakten zu Produkt 4"
beschr="Beschreibung zu Produkt 4" />
<produkt
prtitel="Produkt 5"
facts="Fakten zu Produkt 5"
beschr="Beschreibung zu Produkt 5" />
</seite> Code: var XMLpopup = new XML();
XMLpopup.ignoreWhite=true;
XMLpopup.load("XMLpopup.xml");
XMLpopup.onLoad = function(success) {
anzahl = XMLpopup.firstChild.childNodes.length;
XMLpopup_prtitel = [];
XMLpopup_facts = [];
XMLpopup_beschr = [];
for (var i=0; i<anzahl; i++) {
XMLpopup_prtitel[i] = XMLpopup.firstChild.childNodes[i].attributes.prtitel;
XMLpopup_facts[i] = XMLpopup.firstChild.childNodes[i].attributes.facts;
XMLpopup_beschr[i] = XMLpopup.firstChild.childNodes[i].attributes.beschr;
}
trace("Produkttitel im XML: "+XMLpopup_prtitel);
gotoAndStop(2);
}
__________________ ==>remix.nin.com<== // Life Is Too Short For Boring Music! Fantasie ist die einzige Waffe gegen die Wirklichkeit. Geändert von <sVkVmVit> (22-02-2011 um 12:50 Uhr) |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| push ...array elemente zählen?? | mathiregister | Flash Einsteiger | 2 | 05-06-2008 10:06 |
| XML aus Textdatei klappt. XML aus php klappt nicht! ?? | yaga | Flash MX | 1 | 01-08-2006 00:44 |
| Array gleiche Elemente zählen | harego | ActionScript 1 | 4 | 22-10-2005 14:58 |
| OT-Posts nicht zählen | gloeckle | Fragen, Konstruktive Kritik, Lob | 19 | 30-07-2002 14:59 |
| ich kann nicht zählen!!! | Dennis | Flash 4 und Flash 5 | 2 | 21-10-2001 19:28 |