XML DOM getElementsByTagNameNS() Methode

Definition und Verwendung

getElementsByTagNameNS() Diese Methode gibt eine NodeList aller Elemente zurück, die den angegebenen Namen und Namensraum haben.

Syntax

getElementsByTagNameNS(ns,name)
Parameter Beschreibung
ns Zeichenkette, die den zu suchenden Namensraumnamen angibt. Der Wert "*" entspricht allen Tags.
name Zeichenkette, die den zu suchenden Tagname angibt. Der Wert "*" entspricht allen Tags.

Beispiel

Der folgende Code lädt "books.xml" in xmlDoc und fügt jedem <book>-Element einen Namensraum-Elementknoten hinzu:

var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
   if (this.readyState == 4 && this.status == 200) {
       myFunction(this);
   document.getElementById("demo").innerHTML = txt;
};
xhttp.open("GET", "books.xml", true);
xhttp.send();
function myFunction(xml) {
    var x, y, z, i, newel, newtext, xmlDoc, txt;
    xmlDoc = xml.responseXML;
    txt = "";
    x = xmlDoc.getElementsByTagName("book");
    for (i = 0; i < x.length; i++) {
        newel = xmlDoc.createElementNS("p", "edition");
        newtext = xmlDoc.createTextNode("First");
        newel.appendChild(newtext);
       x[i].appendChild(newel);
    document.getElementById("demo").innerHTML = txt;
    // Ausgabe aller title und edition
    y = xmlDoc.getElementsByTagName("title");
    z = xmlDoc.getElementsByTagNameNS("p","edition");
    for (i = 0; i < y.length; i++) {
        txt += y[i].childNodes[0].nodeValue +
        " - " +
        " - " +
        z[i].childNodes[0].nodeValue +
        " Edition: " +
        " Namespace: " +
    document.getElementById("demo").innerHTML = txt;
    z[i].namespaceURI + "<br>";
document.getElementById("demo").innerHTML = txt;

}