获取元素的子节点

Posted weixin2623670713

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取元素的子节点相关的知识,希望对你有一定的参考价值。

<!DOCTYPE html>
<html>
 <head>
  <meta charset="UTF-8">
  <title></title>
  <script type="text/javascript">
   window.onload=function(){
//    为id为btn04的按钮绑定一个单击响应函数
   var btn04=document.getElementById(‘btn04‘);
    btn04.onclick=function(){
     //查找#city下所有li节点
//     1.获取id为city的元素
     var city =document.getElementById(‘city‘);
//     document.getElementsByTagName(‘li‘);   //这样写不行,获取页面当中的所有li
        var lis = city.getElementsByTagName(‘li‘);
       
         for(var i=0;i<lis.length;i++){

      alert(lis[i].innerHTML);
     } 
    }
    var btn05=document.getElementById(‘btn05‘);
    btn05.onclick=function(){
     var city =document.getElementById(‘city‘);
     /*
      * childNodes 属性会包括文本节点
      * 根据DOM标签空白也会当成文本节点
      * 在IE8及以下返回4个子元素
      */
     var cns = city.childNodes;
//     alert(cns.length);
//       for(var i=0;i<cns.length;i++){
//      alert(cns[i]);
//     }


//     children   包括子元素,不包括空白
//     该属性可以获取到当前元素的所有子元素   元素就是标签
     var cns2=city.children;
     alert(cns2.length)
    }
    
    var btn06=document.getElementById(‘btn06‘);
    btn06.onclick=function(){
     var city =document.getElementById(‘phone‘);
//     返回#phone的第一个子节点   一说节点就包括空白的文本
     //phone.childNodes[0];
//     firstChild可以获取到当前元素的第一个节点(包括空白文本节点)
     var fir = phone.firstChild;
     alert(fir.innerHTML);
//    fir  = phone.firstElementChild   不建议使用
    }
   }
  </script>
 </head>
 <body>
 <ul id="city">
   <li id="bj">北京</li>
   <li>东京</li>
   <li>首尔</li>
 </ul>
 
 <ul id="phone"><li>ios</li></ul>
 
 
  <button id="btn04">点击</button>
  <button id="btn05">点击</button>
  <button id="btn06">点击</button>
 </body>
</html>

以上是关于获取元素的子节点的主要内容,如果未能解决你的问题,请参考以下文章

轻松学习JavaScript二十一:DOM编程学习之获取元素节点的子节点和属性节点

如何获取具有相同名称的元素并根据 XSLT 中的子节点值对它们进行排序

JavaScript24_DOM编程:div的原型链

在selenium2中,如何获取一个父节点下子节点的个数,所有的子节点的内容都有MOON

使用js操作元素节点

layui 获取节点元素返回的值为什么是undefined?