Andreas: HTML-Element gegen XML-Node austauschen

Beitrag lesen

Hallo zusammen,

Ich probiere gerade ein HTML-Element incl. Inhalt (ein DIV) gegen ein vom Server im Hintergrund nachgeladenes (XMLHttpRequest) XML-Node auszutauschen.

Perfekt funktioniert's mit

e = document.getElementById('mynode');
e.outerHTML = req.responseText;

allerdings nur auf dem Internet Explorer. Firefox/Gecko unterstuetzt outerHTML aus politischen Gruenden nicht (was ich auch verstehe, es ist eigentlich eine Microsoft-proprietaere Erweiterung.

Ich habe schon probiert, mit e.parentNode.replaceChild(req.responseXML, e) den Node direkt im DOM auszutauschen. Dann haben die Knoten aber scheinbar den falschen Typ, denn z.B. im DOM Inspector vom Firefox sieht zwar alles okay aus, aber die Elementnamen sind ploetzlich klein statt grossgeschrieben und es werden quasi nur die Texte des nachgeladenen Fragments angezeigt, die Tags werden aber ignoriert.

Wie also kann ich (browseruebergreifend) ein HTML-Element austauschen, gegen das vom Server nachgeladene?

Das wuerde mich echt freuen wenn mir das jemand erzaehlen kann.

Viele Gruesse,

Andreas