コンテンツを並べ替え、それぞれ 2 つの値を持つ div を作成する配列でループを実行しようとしています。
いろいろやってみたのですが、どうすればいいのかわかりません。
これが私がする必要があることです: 配列をループして 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で行ったように、要素の数をハードコードしないで、それを行うより良い方法はありますか?
ありがとう