如何在innerhtml中连接属性值?

时间:2016-07-24 17:58:47

标签: javascript innerhtml

我在JavaScript中有以下代码:

var counter=0;
for(..){

Element.innerHTML = '<div id="myId">....</div>';

counter++;
}

我希望执行以下操作,动态生成ID:

for(..){
var counter=0;
...
Element.innerHTML = '<div id="myId'+counter+'">....</div>';
...
counter++;
}

2 个答案:

答案 0 :(得分:2)

移动

var counter = 0;
在for循环之外的

,因为你在每个循环中重置它。

var counter = 0;
for(...){
    //...
    Element.innerHTML = '<div id="myId'+counter+'">....</div>';
    //...
    counter++;
}

答案 1 :(得分:0)

如果您已使用for循环,请不要使用单独的计数器 不要使用大写的Element作为变量名。它已经是DOM interface了,我无法想到你应该压倒它的原因。即使它不会导致代码中出现当前问题,也是不好的做法。

var element = document.body // or grab any dom node
var someAmount = 10 // or any amount

// assuming you are looking to add additional divs with each iteration
// which is what I assume you mean by 'concatenate'
for (var i = 0; i < someAmount; i++) {
  element.innerHTML += '<div id="myId'+i+'">....</div>'
}