4

基本上我想显示包含 sub ul 的每个列表项的总列表项,请参阅我的代码:http: //jsfiddle.net/NykJe/

<ul>
    <li>linkA</li>
    <li>linkB<span class="total"></span>
        <ul>
            <li>link2</li>
            <li>link2</li>
            <li>link2</li>
        </ul>
    </li>
    <li>linkC</li>
    <li>linkD<span class="total"></span>
        <ul>
            <li>link2</li>
            <li>link2</li>
            <li>link2</li>
            <li>link2</li>
            <li>link2</li>
        </ul>
    </li>
</ul>

var total = $('ul li ul li').size();
$('.total').append('<div>'+ total +'</div>');

我想使用循环来计算每个特定的 sub ul li 项目计数,结果将是 LinkB 3 和 LinkD 5 目前它显示 LinkB 8,LinkD 8

4

2 回答 2

6
$('ul li ul').each(function(){
  $(this).prev('.total').append('<div>'+ $(this).find('li').length +'</div>');
});

JSFiddle

于 2012-06-20T16:39:30.133 回答
1

尝试这样的事情。它只是直接在标签中写出计数span,而不是添加新元素(如果您只想插入数字,则不需要额外的标签)。

$('.total').each(function()
{
    $(this).html($(this).parent().find('li').length);                    
});

工作示例

于 2012-06-20T16:41:46.337 回答