将数组项加载到JS变量时出现问题

Having Issue on Loading Array Items to JS Variable

本文关键字:问题 变量 JS 数组 加载      更新时间:2023-09-26

我需要将数组的项加载到可变字符串中,以便在页面中动态使用它

var data = ["Sat 17 Jan", "Wed 14 Jan", "Wed 7 Jan"]
var str;
for (i = 0; i < data.length; i++) { 
    str = '<button class="btn btn-success">'+data[i]+'</button>';
}
console.log(str);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

我现在得到的只是控制台中的最后一个按钮:

<button class="btn btn-success">Wed 7 Jan</button>

但我需要

<button class="btn btn-success">Sat 17 Jan</button><button class="btn btn-success">Wed 14 Jan</button><button class="btn btn-success">Wed 7 Jan</button>

您需要将每个新按钮附加到字符串中,并为此使用+=

var data = ["Sat 17 Jan", "Wed 14 Jan", "Wed 7 Jan"]
var str = "";
for (i = 0; i < data.length; i++) { 
    str += '<button class="btn btn-success">'+data[i]+'</button>';
}
console.log(str);

var data = ["Sat 17 Jan", "Wed 14 Jan", "Wed 7 Jan"];
console.log($.map(data, function(aDate){
  return '<button class="btn btn-success">'+ aDate +'</button>';
}).join(''));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

在每个循环中重新分配str。试试这个:

str = str + "your html";

在for循环中