XML DOM nodeName 属性

  • 定义和使用

    nodeName 属性根据其类型返回节点的名称。
  • 语法

    nodeObject.nodeName
    
  • 示例

    以下代码片段将 "books.xml" 并显示根节点的节点名称和节点类型:
    <!DOCTYPE html>
    <html>
      <body>
      
      <p id="demo"></p>
      
      <script>
        var xhttp = new XMLHttpRequest();
        xhttp.onreadystatechange = function() {
            if (xhttp.readyState == 4 && xhttp.status == 200) {
                myFunction(xhttp);
            }
        };
        xhttp.open("GET", "books.xml", true);
        xhttp.send();
        
        function myFunction(xml) {
            var x, y, i, xmlDoc, txt;
            xmlDoc = xml.responseXML;
            txt = "";
            x = xmlDoc.documentElement;
            y = x.childNodes;
            for(i = 0; i < y.length; i++) {
                txt += "Nodename: " + y[i].nodeName +
                " (nodetype: " + y[i].nodeType + ")<br>";
                for(z = 0; z < y[i].childNodes.length; z++) {
                    txt += "Nodename: " + y[i].childNodes[z].nodeName +
                    " (nodetype: " + y[i].childNodes[z].nodeType + ")<br>";
                }
            }
            document.getElementById("demo").innerHTML = 
            "Nodename: " + xmlDoc.nodeName +
            " (nodetype: " + xmlDoc.nodeType + ")<br>" +
            "Nodename: " + x.nodeName + 
            " (nodetype: " + x.nodeType + ")<br>" +
            txt;
        }
        
      </script>
      
      </body>
    </html>
    
    尝试一下
    下面示例显示所有元素的 nodeName 和 nodeValue
    <!DOCTYPE html>
    <html>
      <body>
      
      <p id="demo"></p>
      
      <script>
        var xhttp = new XMLHttpRequest();
        xhttp.onreadystatechange = function() {
            if (xhttp.readyState == 4 && xhttp.status == 200) {
                myFunction(xhttp);
            }
        };
        xhttp.open("GET", "books.xml", true);
        xhttp.send();
        
        function myFunction(xml) {
            var x, y, i, xmlDoc, txt;
            xmlDoc = xml.responseXML;
            txt = "";
            x = xmlDoc.documentElement;
            y = xmlDoc.documentElement.childNodes;
            for(i = 0; i < y.length; i++) {
                if (y[i].nodeType != 3) {
                    txt += "Nodename: " + y[i].nodeName +
                    " (value: " + y[i].childNodes[0].nodeValue + ")<br>";
                }
                for(z = 0; z < y[i].childNodes.length; z++) {
                    if (y[i].childNodes[z].nodeType != 3) {
                        txt += "Nodename: " + y[i].childNodes[z].nodeName +
                        " (value: " + y[i].childNodes[z].childNodes[0].nodeValue + ")<br>";
                    }
                }
            }
            document.getElementById("demo").innerHTML = 
            "Nodename: " + xmlDoc.nodeName +
            " (value: " + xmlDoc.childNodes[0].nodeValue + ")<br>" +
            "Nodename: " + x.nodeName + 
            " (value: " + x.childNodes[0].nodeValue + ")<br>" +
            txt;
        }
        
      </script>
      
      </body>
    </html>
    
    尝试一下