[英]Nested loops with list and array
我有一个HTML ul li,我需要从中获取内容并使用数组中的其他内容进行更新。 到目前为止,我创建了一个嵌套循环,但是我总是卡在同一点:每个li进行4次指示(我的数组长4),最终只显示数组的最后一个元素。我的代码会比我更清楚:
HTML
<div class="menu-sidebar">
<ul>
<li><a>Batman</a></li>
<li><a>Billo</a></li>
<li><a>Breaking-</a></li>
<li><a>Buttons</a></li>
</ul>
</div>
s
var currentNames = [];
var newListName = [
"Hello",
"Billo M",
"Breaking Hard",
"Button"
];
$(".menu-sidebar li a").each(function(index) {
var listName = $(this).text().replace(/\s/g,'');
currentNames.push(listName);
//console.log(currentNames); //["Batman", "Billo", "Breaking-", "Buttons", .. ]
//console.log(newListName); //["hello", "Billo M", "Breaking Hard", "Button"]
});
for (var j = 0; j < currentNames.length; j++) {
var currentName = currentNames[j]
for (var i = 0; i < 1; i++) {
console.log(currentNames[j]);
console.log(newListName[j]);
$(".menu-sidebar li a").each(function(index) {
$(this).text(newListName[j]);
});
}
}
在列表上进行多次遍历似乎没有多大意义,只是一遍就可以了(如果我正确理解了您的描述)
$(".menu-sidebar li a").each(function(index) {
$(this).text(newListName[index])
});
这是一个演示:
var newListName = [ "Hello", "Billo M", "Breaking Hard", "Button" ]; $(".menu-sidebar li a").each(function(index) { $(this).text(newListName[index]) });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="menu-sidebar"> <ul> <li><a>Batman</a></li> <li><a>Billo</a></li> <li><a>Breaking-</a></li> <li><a>Buttons</a></li> </ul> </div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.