对于循环和获取元素?

时间:2013-10-24 05:51:08

标签: javascript jquery html

我有一个for循环,如:

for(i=0; i<6; i++)
{
if(i=0)
{a1 = '<div>something1</div>';}
if(i>=1 & i<=5)
{b1 = '<div>something2</div>';}
}
document.getElementById('example').innerHTML = a1 + b1;

<div id='example'></div>

结果只有:<div>something1</div><div>something2</div>

我想要结果:

<div>something1</div>
<div>something2</div>
<div>something2</div>
<div>something2</div>
<div>something2</div>
<div>something2</div>

如何使用上面的for loop执行此操作。谢谢你的帮助。

4 个答案:

答案 0 :(得分:2)

您要覆盖相同的变量b,而不是为其附加值。

我将在这种情况下使用的一个解决方案是使用一个数组(更新为使用2个数组来支持很多完整的情况,其中可以交替出现a / b值)。

var array1 = [], array2 = [];
for (i = 0; i < 6; i++) {
    if (i = 0) {
        array1.push('<div>something1</div>');
    }
    if (i >= 1 & i <= 5) {
        array2.push('<div>something2</div>');
    }
}
document.getElementById('example').innerHTML = array1.join('') + array2.join('');

或使用字符串连接

var a = '',
    b = '';
for (i = 0; i < 6; i++) {
    if (i = 0) {
        a1 += '<div>something1</div>';
    }
    if (i >= 1 & i <= 5) {
        b1 += '<div>something2</div>';
    }
}
document.getElementById('example').innerHTML = a1 + b1;

答案 1 :(得分:1)

for(i=0; i<6; i++)
{
if(i==0)
{a1 = '<div>something1</div>';}
if(i>=1 && i<=5)
{b1 = '<div>something2</div>';}
}
document.getElementById('example').innerHTML = a1 + b1;

<div id='example'></div>

查看介绍性的JavaScript参考资料。 =是赋值运算符。使用==检查是否相等,&&表示逻辑AND。

答案 2 :(得分:1)

var append_data;
for (i = 0; i < 6; i++) {
    if(i == 0){
        append_data += '<div>something1</div>';
    }else{
         append_data += '<div>something2</div>';
    }
}
document.getElementById('example').innerHTML = append_data;

答案 3 :(得分:1)

尝试以下代码:

var a1='';
var b1='';
for(i=0; i<6; i++)
{
   if(i==0)
   {
      a1 = '<div>something1</div>';
   }
   else if(i<6)
   {
      b1=b1+ '<div>something2</div>';
   }
}
document.getElementById('example').innerHTML = a1 + b1;