在标题之后和页脚之前插入html列表中的项目

时间:2015-05-06 00:15:26

标签: javascript jquery html dom

我需要在标题之后和页脚之前插入一些项目。

base html:

<ul id="comments_notifications_list">
    <li>header</li>
    <li>footer</li>
</ul>

我正在尝试此代码,但最后一项将被替换:

$.each(comments, function(idx, obj){ 
    $.each(obj, function(key, value){
        $('ul#comments_notifications_list:not(:first-child)').append('<li>stuff</li>');
    });
});

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

您可以使用afterinsertAfter jQuery方法。

以下是您尝试执行的操作的示例:

var comments = [1, 2, 3];

$("li:first-child").after($.map(comments, function(item){ 
        return "<li>Some value" + item + "</li>";
}));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<ul id="comments_notifications_list">
    <li>header</li>
    <li>footer</li>
</ul>

答案 1 :(得分:0)

你可以试试这种方式。基本上,你得到ul标签的第一个孩子$(&#39; ul#comments_notifications_list&#39;)。children()。eq(0),然后li标签将在这个孩子之后插入。有关insertAfter()的更多信息,请转到此链接http://api.jquery.com/insertafter/

 $.each(comments, function(idx, obj){ 
   $.each(obj, function(key, value){
    $('<li>stuff</li>').insertAfter($('ul#comments_notifications_list').children().eq(0));
});