如何在<ul>列表中的第n个<li>之后删除元素并追加新元素?

Sam*_*tar 0 javascript jquery

我有以下HTML:

<ul style="margin-bottom: 0;" id="stats-results" class="message">
   <li>DS1 Records: <span id="ds1Count"></span></li>
   <li>DEV Records: <span id="devCount"></span></li>
   <li>Added: <span id="Added"></span></li>
   <li>Rejected: <span id="Rejected"></span></li>
   <li>Updated: <span id="Updated"></span></li>
   <li>xxx</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

如何删除<li>5号后出现的任何元素<li>

我也有这个代码:

$.each(data.Events, function (i, item) {
    $("#stats-list").append('<li>' + item.Description + ' : ' + item.Elapsed + ' ms</li>');
});
Run Code Online (Sandbox Code Playgroud)

有没有办法我可以改变它,以便它在第5次之后追加 <li>

nbr*_*oks 6

第1部分

$('#stats-results li:gt(4)').remove();
Run Code Online (Sandbox Code Playgroud)

第2部分

要在第5个元素之后连续添加列表中的每个元素,基本上颠倒添加的元素的顺序,您可以这样做:

$.each(data.Events, function (i, item) {
    $("#stats-list li:eq(4)").after('<li>' + item.Description + ' : ' + item.Elapsed + ' ms</li>');
});
Run Code Online (Sandbox Code Playgroud)

或者,保留您要添加的元素的顺序,但在第5个索引处启动它们:

$.each(data.Events, function (i, item) {
    $("#stats-list li:eq("+(4+i)+")").after('<li>' + item.Description + ' : ' + item.Elapsed + ' ms</li>');
});
Run Code Online (Sandbox Code Playgroud)