如何在 JQuery 中替换ul
的所有li
,我不想使用append
向列表中添加任何新项目,而是我想要一个在同一ul
中具有新li
元素的新列表。
我试过了
for (index = 0; index < users.length; ++index) {
$('#users').replaceChild(users[index].UserName, $('#users').childNodes[index]);
}
#HTML
<div class="col-md-4" style="margin:auto">
<h2 class="text-success">Users</h2>
<ul id="users" style="list-style:none"></ul>
</div>
但它只将数组的最后一个元素添加到ul
, 每次获得新列表时如何创建新ul
?
最好包含一个数组示例。我做了一个片段,希望有帮助。
var array = ["New li 1", "New li 2", "New li 3"];
$('#load').click(function(){
$('#list').empty();
$.each(array, function( key, value ) {
$('#list').append('<li>' + value + '</li>');
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul id="list">
<li>Old li 1</li>
<li>Old li 2</li>
<li>Old li 3</li>
</ul>
<button id="load">Load array</button>
你可以使用jQuery.replaceWith()
函数。
只需使用以下代码
$('#users').replaceWith( "<li>New Item</li>" );
请参阅此文章。