1
再帰的な解析機能の種類を作成しようとしていますが、機能しません。javascriptの再帰的な「解析」機能
解析されるべき配列:
gridArray = [
{
type:"row",
text:"row1",
cols: [
{
type:"col",
text:"col1",
rows: [
{
type:"row",
text:"row1 nested",
cols: [{}]
}
]
},
{
type:"col",
text:"col2",
rows: [{}]
}
]
}
]
機能:
function createHtmlCode(gridArray,level){
for(var y=0; y<gridArray.length; y++){
obRow = gridArray[y];
r+="<div class='row'>";
arCol = obRow.cols;
for(var x=0; x<arCol.length; x++){
obCol = arCol[x];
r+="<div class='col'>";
if(obCol.rows){
createHtmlCode(obCol.rows,level++);
}
r+="</div>";
}
r+="</div>";
}
}
r="";
createHtmlCode(gridArray,1);
瞬間結果(r)がある:
<div class="row">
<div class="col">
<div class="row">
<div class="col">
</div>
</div>
</div>
</div>
...それはshoud be:
<div class="row">
<div class="col">
<div class="row">
<div class="col">
</div>
</div>
</div>
<div class="col">
<div class="row">
</div>
</div>
</div>
私は間違って何をしていますか? あなたのヒントをお寄せいただきありがとうございます!
だろうあなたは 'レベルを使用しないでください「まったく。なぜあなたはそれをその機能の中に持っていますか? – thefourtheye
見落とされた、クラス名のためのものです。 @Malvolio:ありがとう!あなたは天才です:) – Schorsch
[回答を受け入れる](http://meta.stackexchange.com/a/5235/235416):-) – thefourtheye