我试图做一个数组的循环,排序内容和每个创建2个值的div。javascript循环奇数/偶数组
尝试了很多东西,但我无法弄清楚我需要做什么。
这就是我需要做的:循环一个数组并创建div。每个div应该有2个数值。就像这样:
<div id="1">content, content 2</div>
<div id="2">content 3, content 4</div>
<div id="3">content 5, content 6</div>
<div id="4">content 7</div>
所以我有数组是这样的:
var myArray = ['content', 'content 2', 'content 3', 'content 4', 'content 5', 'content 6', 'content 7'];
而且我循环是这样的:
for(var i=0; i<=myArray.length; i++){
if(currentDiv == 1){
$('#s'+currendDivID+'').append("<p>"+myArray[i]+"</p>");
console.log(myArray[i]);
}
if(currentDiv == 2){
$('#s'+currendDivID+'').append("<p>"+myArray[i]+"</p>");
console.log(myArray[i]);
$('#container').append("</div>");
}
console.log(currendDivID);
if(currentDiv == 3){
currendDivID ++;
$('#container').append("<div id=\"s" + currendDivID + "\">");
console.log(myArray[i]);
$('#s'+currendDivID+'').append("<p>"+myArray[i]+"</p>");
}
if(currentDiv == 4){
console.log(myArray[i]);
$('#s'+currendDivID+'').append("<p>"+myArray[i]+"</p>");
$('#container').append("</div>");
}
console.log(currendDivID);
if(currentDiv == 5){
currendDivID++;
$('#container').append("<div id=\"s" + currendDivID + "\">");
console.log(myArray[i]);
$('#s'+currendDivID+'').append("<p>"+myArray[i]+"</p>");
}
if(currentDiv == 6){
if(myArray[i] == undefined){
return;
}
console.log(myArray[i]);
$('#s'+currendDivID+'').append("<p>"+myArray[i]+"</p>");
$('#container').append("</div>");
}
if(currentDiv == 7){
currendDivID++;
if(myArray[i] == undefined){
$('#container').append("</div>");
return;
}
$('#container').append("<div id=\"s" + currendDivID + "\">");
console.log(myArray[i]);
$('#s'+currendDivID+'').append("<p>"+myArray[i]+"</p>");
}
currentDiv ++;
}
这工作得很好,但我需要硬编码每个div计数,然后填充。 有没有更好的方法来做到这一点,而不是像我在currentDiv var那样对元素的数量进行编码?
感谢
在比较你的例子中,数组中的值是顺序的,它们应该如何进入div - 是这种情况吗? – kmfk