<dl id="dl1">
   <dt>aa</dt>
   <dd>
      <ul>
      <li>aaa</ li>
      <li>bbb</ li>
      </ul>
   <dd>
   <dt>bb</dt>
   <dd>
      <ul>
      <li>111</ li>
      </ul>
   <dd>
</dl>动态生成的<dl>和<ul>,类型于淘宝购物界面选择商品属性的效果。
就是遍历<dl>中有多少个节点应该怎么遍历?
然后再循环中还要遍历ul,这个ul的id在动态生成的时候应该如何赋值?

解决方案 »

  1.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    </head><body>
    <dl id="dl1">
      <dt>aa</dt>
      <dd>
        <ul>
          <li>aaa</li>
          <li>bbb</li>
        </ul>
      <dd>
      <dt>bb</dt>
      <dd>
        <ul>
          <li>111</li>
        </ul>
      <dd>
    </dl><script type="text/javascript">
    var dl1 = document.getElementById('dl1');
    var counter = 0;function showNode(pNode) {
    for(var i = 0; i < pNode.childNodes.length; i ++) {
    if (pNode.childNodes[i].nodeType == 1) {
    alert('找到子元素节点:' + pNode.childNodes[i].nodeName);
    counter ++;
    if (pNode.childNodes[i].childNodes.length > 0) showNode(pNode.childNodes[i]);
    }
    }
    }showNode(dl1);
    document.write('共有' + counter + '个元素节点');
    </script>
    </body>
    </html>第二个问题看不懂你想问什么。
      

  2.   

    <script type="text/javascript">
    function mm(){
    var a=document.getElementById("dl1");
    var b=a.getElementsByTagName("*");
    alert(b.length);
    var c=a.getElementsByTagName("ul");
    for(var i=0;i<c.length;i++){
    c[i].id="ul"+i;
    }
    var d=document.getElementById("ul0");
    alert(d.id);
    }
    window.onload=mm;
    </script>
    这样试试 不很明白你的意思
      

  3.   

    var a=document.getElementById("dl1");
    var dls=a.getElementsByTagName("dl");
      

  4.   

    默拜三楼的哥们。
    精简而强大:
    刚又查了一下用法:
    getElementsByTagName("*"):
    getElementsByTagName() 方法返回元素的顺序是它们在文档中的顺序。
     
    如果把特殊字符串 "*" 传递给 getElementsByTagName() 方法,它将返回文档中所有元素的列表,元素排列的顺序就是它们在文档中的顺序。