Mav*_*ick 4 each jquery append html-lists
我有一个这样的无序列表:
<ul id="names-list">
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
Run Code Online (Sandbox Code Playgroud)
假设我想从此列表中为每个<li>项添加一个名称:
var names = [ "Jon", "Nick", "Bill", "Tom" ];
Run Code Online (Sandbox Code Playgroud)
我的代码是这样的:
$('#names-list li').each(function () {
$(this).append(names);
});
Run Code Online (Sandbox Code Playgroud)
但由于某种原因,它不起作用.有人能告诉我我做错了什么吗?谢谢.
Dan*_*non 15
为什么没有人指出将李的数量基于dom中空li的数量是一种可怕的方式呢?根据阵列中有多少项来生成li更好.
试试这个:
HTML
<div id="parent">
<ul id="names-list">
<!-- empty list -->
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)
JS
var names = [ "Jon", "Nick", "Bill", "Tom" ];
var list = $("#names-list");
var parent = list.parent();
list.detach().empty().each(function(i){
for (var x = 0; x < names.length; x++){
$(this).append('<li>' + names[x] + '</li>');
if (x == names.length - 1){
$(this).appendTo(parent);
}
}
});
Run Code Online (Sandbox Code Playgroud)
Jul*_*ont 11
each()方法有一个"索引"参数.使用它来获取列表中的正确值.
var names = [ "Jon", "Nick", "Bill", "Tom" ];
$('#names-list li').each(function (index) {
$(this).text(names[index]);
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
28349 次 |
| 最近记录: |