【发布时间】:2013-04-27 09:26:49
【问题描述】:
我正在尝试做这样的事情:
var size = skillsArray.length;
for (i = 0; i < size; i++) {
var divString = "'#Skill" + i +"'";
$(divString).append(skillsArray[i]);
}
为了开始我的原型,skillsArray 有 5 个值。所以我的javascript是这样的:
$('#Skill0').append(skillsArray[0]);
$('#Skill1').append(skillsArray[1]);
$('#Skill2').append(skillsArray[2]);
$('#Skill3').append(skillsArray[3]);
$('#Skill4').append(skillsArray[4]);
我的 html 是这样的:
<div id='Skill0'></div>
<div id='Skill1'></div>
<div id='Skill2'></div>
<div id='Skill3'></div>
<div id='Skill4'></div>
一切正常。
现在我想处理更大的动态大小的数组,我想使用循环。
所以我的第一步是在 javascript 循环中写出 html div 标签,这很有效:
for (i=0; i<size; i++)
{
html += "<div id='Skill" + i + "'></div>";
}
在我尝试第 2 步之前,这就是我的问题所在,它确实显示前 5 个技能很好,之后的每个技能都是空白的。 (意料之中,因为我还没有更新我的 javascript 来对每个 div 进行追加,它仍然只做了前 5 个。)
所以,我已准备好尝试第 2 步并使用 for 循环进行追加。我怎样才能做到这一点?我粘贴在最顶部的代码根本没有用任何东西填充每个 div。
提前感谢您的帮助! -冬青
【问题讨论】:
-
skillsArray里面有什么? -
这里你正在创建一个
html变量,它被添加到dom中 -
是否有一个包含
<div id='Skill0'></div>之类的容器元素 -
为什么要多引号... var divString = "#Skill" + i
-
它只是字符串,是的,我将 html var 添加到 DOM,但由于该部分从未损坏,因此我没有继续使用该 sn-p。谢谢,伙计们!
标签: javascript jquery html for-loop append