<ul>
<li>贷款</li>
<dl>
<dt>贷款本金
<ul>
<li>张海燕</li>
</ul>
</dt>
</dl>
</ul>
用以区分两个地方的li标签。

解决方案 »

  1.   


     var length = $("ul").find("li").length;
    for(var i =0;i<length;i++){
       alert($("ul").find("li:eq("+i+")").text());
    }目前如果不加其他id或者class的情况下,只能这样
      

  2.   

    布局有问题:
    <ul>
        <li>贷款</li>
         <li>   <dl>
                <dt>贷款本金
                    <ul>
                        <li>张海燕</li>
                        <li>张海燕2</li>
                    </ul>
                </dt>
            </dl></li>
    </ul>
    alert($("li:not(:has(dl))").filter(function(){
        return $(this).parents("dl").length===0;
    }).length)
    alert($("dl ul >li").length)
      

  3.   

    还是用 减法吧var len = $('ul li').length;
    var cout = $('dt li').length ;
    alert(len-cout);
    alert(cout);