javascript - 如何 append 到使用 jquery 在 for 循环中动态创建的 div 名称?

标签 javascript jquery html for-loop append

我正在尝试做这样的事情:

        var size = skillsArray.length;
        for (i = 0; i < size; i++) {
            var divString = "'#Skill" + i +"'";
            $(divString).append(skillsArray[i]);
        }

为了开始我的原型(prototype),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。

预先感谢您的帮助! -霍莉

最佳答案

尝试删除此行中的单引号:var divString = "'#Skill"+ i +"'";,如下所示:

var divString = "#Skill" + i;

关于javascript - 如何 append 到使用 jquery 在 for 循环中动态创建的 div 名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16351059/

相关文章:

javascript - 带有回调的多个版本的 jQuery

javascript - 如何保存 HTML 事件供以后使用?

javascript - 将当前 URL 中的 location.hash 附加到目标 URL

JavascriptInterface Android 传递参数

javascript - 根据循环的选择框选择动态显示和隐藏字段

javascript - 如何分别制作DBconnection和Node.js查询文件

javascript - Jquery datepicker 图标位置不正确

javascript - 兄弟 div 上的 removeClass 不起作用

javascript - 在 Javascript 中使用 select.onchange 有条件地显示/隐藏文本区域

javascript - 如果未对表单进行任何更改,则禁用提交按钮