Niko: XML String -> DOM

Beitrag lesen

ich weiß nicht, warum du das von hinten durch die Brust ins Auge löst.

Wenn du auf XML-Dokumente zugreifen willst, benutze das DOM. Dazu muss der Server die Antwort als application/xml senden, dann parst der Browser den XML-Code und hast du über die Eigenschaft responseXML des XMLHttpRequest-Objektes Zugriff auf den DOM-Baum. (Bei Mootools wird es ähnlich sein.)

Ok, also mal genauer: Die AJAX Anfrage geht direkt an eine XML-Datei, also header wär damit hoffentlich schonmal richtig! Das Problem ist, dass das zurückgegebene XML-Objekt vom Typ "IXMLDOMDocument2" (laut Visual Web Developer) ist und das Kinderelement, auf welches ich zugreifen will vom Typ "IXMLDOMElement" ist. Normale DOM Knoten (im HTML Dokument) sind wie ich das jetzt gesehen hab vom Typ "DispHTMLElement", wobei es da scheinbar noch ne Differenzierung zwischen den Elementen gibt.
Damit funktionieren sämtliche Mootools-Funktionen, die normalerweise auf den DOM Baum des HTML-Dokuments funktionieren auf dieses XML-Element nicht!

Wo liegt das Problem? Wozu brauchst du Mootools-Funktionen und was hindert dich daran, direkt mit dem XML-DOM zu arbeiten?

Also ich brauche sie nicht unbedingt, aber sie machen das Leben erheblich einfacher und ehe ich jetzt den ganzen Code verändere, alle Mootools Funktionen wieder rausnehme und durch Standard-Funktionen ersetze frag ich lieber hier, ob jemand ne Idee hat. ;)
Die wichtigste Funktion ist eigenlich Element.getElement/s, womit man mittels CSS-Selektor im DOM-Baum suchen kann.

Vielleicht solltest du dich auch mit JSON auseinandersetzen, einem für solche Datenübertragungen viel geeigneteres Format.

Normalerweise mach ich sowas auch mit JSON, aber hier geht es leider nicht nur um Dateiübertragung, sondern auch um die Übertragung eines DOM-Baumes (der im XML-Dokument definiert ist), welchen ich dann direkt (also nach ein paar Operationen darin) ins HTML-Dokument einfüge. (Wie man vlt schon am Tag Namen "Markup" erahnen konnte ;))

MfG Niko