Guten Abend
Mein Skript wird per Ajax XML-Daten empfangen. Das Skript soll nun die Attribute aus dem XML in Eigenschaften von Objekten des Javascriptclients wandeln. Ich möchte danach mit Objektorientierter Programmierung forfahren.
Ich frage also die Daten aus dem XML ab und ermittle ihre anzahl:
function write_felder()
{
if (receiver.responseXML.length != 0 && receiver.responseXML.firstChild.childNodes)
{
// Der empfangene DOM-Baum -> (nur aktualisierte Felder)
var spiel_dom_baum = receiver.responseXML;
// Die empfangenen felder auslesen
var feld_neu = spiel_dom_baum.getElementsByTagName('feld');
// Anzahl neuer felder auslesen
var anzahl_neu = feld_neu.length;
Dann Frage ich die einzelnen einträge in einer schlaufe ab.
Hier kommt mein Problem:
Das erste Attribut des i-ten XML-Eintrages transportiert der Name des Objektes, welches ich mit Informationen auffüllen möchte. Angenommen ich instanziiere die Objekte in einer früheren Funktion, dann sollte ich an dieser Stelle darauf zugreifen können - nicht?
Frage: Wie kriege ich es nun hin, das die Variable feldname als Objekt interpretiert wird?
for(i = 0; i < anzahl_neu; i++)
{
// Der DOM-Baum in Variablen setzen
var feldname = feld_neu[i].attributes[0].nodeValue;
var aktualisiert = feld_neu[i].attributes[1].nodeValue;
var morph_alt1 = feld_neu[i].attributes[2].nodeValue;
var morph_mid1 = feld_neu[i].attributes[3].nodeValue;
var morph_end1 = feld_neu[i].attributes[4].nodeValue;
var morph_from1 = feld_neu[i].attributes[5].nodeValue;
var morph_to1 = feld_neu[i].attributes[6].nodeValue;
var art = feld_neu[i].attributes[7].nodeValue;
// Die Variablen ins Objekt injektieren
// feldname muss objekt einleiten
// .eigenschaft
feldname.aktualisiert = aktualisiert1;
feldname.morph_alt = morph_alt1;
feldname.morph_mid = morph_mid1;
feldname.morph_end = morph_end1;
feldname.morph_from = morph_from1;
feldname.morph_to = morph_to1;
}
Alles anzeigen
Für Anregungen bin ich äusserst dankbar!
Lieber Gruss