每个循环的jQuery追加列表项无法附加到正确的位置

时间:2012-12-16 11:24:45

标签: jquery html-lists each

我正在尝试将ul附加到每个循环的现有列表项,但它无法放置在我想要的正确位置。这是jsfiddle链接wrong result。 这就是我想要实现的目标correct result

这是我的HTML

<ul class="rows">
 <li>row</li>
 <li>row</li>
 <li>row</li>
 <li>row</li>
 <li>row</li>
</ul>
<ul class="ins">
    <li>columns</li>
    <li>columns</li>
</ul>
<ul class="ins">
    <li>columns</li>
    <li>columns</li>
</ul>
<ul class="ins">
    <li>columns</li>
    <li>columns</li>
</ul>

<ul class="ins">
    <li>columns</li>
    <li>columns</li>
</ul>
<ul class="ins">
    <li>columns</li>
    <li>columns</li>
</ul>

希望通过使用jQuery append

来实现此结构
<ul class="rows">
    <li>
        row
        <ul class="ins">
            <li>columns</li>
            <li>columns</li>
        </ul>
    </li>
    <li>
        row
        <ul class="ins">
            <li>columns</li>
            <li>columns</li>
        </ul>
    </li>
    <li>
        row
        <ul class="ins">
            <li>columns</li>
            <li>columns</li>
        </ul>
    </li>
    <li>
        row
        <ul class="ins">
            <li>columns</li>
            <li>columns</li>
        </ul>
    </li>
    <li>
        row
        <ul class="ins">
            <li>columns</li>
            <li>columns</li>
        </ul>
    </li>
    <li>
        row
        <ul class="ins">
            <li>columns</li>
            <li>columns</li>
        </ul>
    </li>
</ul>
​

1 个答案:

答案 0 :(得分:2)

这应该可以解决问题:

$('.ins').each(function(index,e){
    $('.ins').eq(index).appendTo($('.rows').children().eq(index));
});

我希望这就是你要找的东西。