Stefan: XML Methoden ergeben Fehler im Internet Explorer

folgender Code funktioniert tadellos im FF/Safari:

document.getElementById("name1").innerHTML = xmlDoc.getElementsByTagName("NAME")[1].childNodes[0].nodeValue;

im IE führt er zum Fehler "Error: Object required"

hat jemand eine Ahnung warum das passiert?

mfg
Stefan

  1. Hallo,

    Der IE liefert u.U. ein anderes childNodes-Array als FF/Safari:

    Zitat child_nodes
    "Gemäß dem DOM stellt bereits ein Zeilenumbruch oder ein Leerzeichen im Quelltext zwischen Elementknoten einen eigenen Text-Kindknoten dar. Auch HTML-Kommentare sind eigene Knoten. Daran halten sich alle gängigen Browser bis auf den Internet Explorer unter Windows. Dieser ignoriert solche "Leerraum"-Zeichen zwischen Elementknoten völlig, dasselbe gilt für Kommentarknoten. Sie tauchen nicht im childNode-Array auf. Konqueror und Safari setzen "Leerraum"-Zeichen zwar in Texktnoten um, ignorieren aber Kommentarknoten."

    Vermutlich liefert childNodes[0] im IE für dein XML einen Elementknoten, im Unterschied zu FF/Safari. Dann gilt für childNodes[0].nodeValue:
    Zitat nodeValue
    "Bei Elementknoten hat diese Eigenschaft den Wert null."

    Und null ist kein Objekt (alert(typeof null); lügt). Daher wohl der Fehler "Error: Object required".

    Ohne Gewähr...

    Gruß Don P

    1. Perfekt ! Die Antwort ist genau was ich brauchte... auch wenn sie mich vor mehr Probleme stellt (damn IE).

      Danke!