jQuery插入div ul

时间:2012-11-18 11:52:02

标签: jquery

我有以下HTML结构:

<div class="list-comments one">
    <ul>
        <li>
            <span>1</span>
            <p class="title"><a href="#">Welcome!</a></p>
            <div class="list-subcomments" style="display: none;">
                <div class="list-comments two">
                    <ul>
                        <li>
                            <span>2</span>
                            <span style="text-align:center;">Josh</span>
                        </li>
                    </ul>
                </div>
            </div>
        </li>
    </ul>
</div>

我想在第一个ul中添加一个新的li,如下所示:

var html = '';
html = '<li>';
html = '<span>1</span>';
html = '<p class="title"><a href="#">Antoher Welcome!</a></p>';
html = '<div class="list-subcomments" style="display: none;">';
html = '<div class="list-comments two">';
html = '<ul></ul>';
html = '</div>';
html = '</div>';
html = '</li>';
$(".one ul").append(html);

我只是希望将它添加到第一个ul中,但它会添加两个ul。

3 个答案:

答案 0 :(得分:1)

$(".one ul:first").append(html);

$(".one > ul").append(html);

小提琴 - http://jsfiddle.net/D7RF3/

答案 1 :(得分:1)

您可以使用child选择器:

$(".one > ul").append(html);

:first选择器:

$(".one ul:first").append(html);

请注意,您要覆盖这些值而不是连接它们,您应该+=而不是=;

var html = '';
html += '<li>';
html += '<span>1</span>';
// ...
html += '</li>';

答案 2 :(得分:0)

那是因为该div下面有两个ul个元素。你有两个选择。

$('.one ul').first().append(html);

$('.one > ul').append(html);