日期:2014-05-16  浏览次数:20447 次

高分求教:如何根据给定关系生成相应节点
有个配置文件
JScript code

config = {
    subConfig : [{
        name  : '1',
        subConfig : [{
            name  : '4'
        }, {
            name  : '5'
        }]
    }, {
        name  : '2',
        subCondif : [{
            name  : '6',
            subConfig : [{
                name  : '7'
            }]
        }]
    }, {
        name  : '3'
    }]
}



可以生成类似于如下HTML结构:
HTML code

<div id='1'>
    <div id='4'></div>
    <div id='5'></div>
</div>
<div id='2'>
    <div id='6'>
        <div id='7'>
        </div>
    </div>
</div>
<div id='3'>
</div>




因为理论上subConfig可以是无限个的,所以说应该用迭代实现,求各位这问题应该如何解决?

------解决方案--------------------
config = {
subConfig : [{
name : '1',
subConfig : [{
name : '4'
}, {
name : '5'
}]
}, {
name : '2',
subConfig : [{
name : '6',
subConfig : [{
name : '7'
}]
}]
}, {
name : '3'
}]
};
function iterator(o,element){

for(var i=0,len=o.subConfig.length;i<len;i++){
var div=document.createElement('div');
div.id=o.subConfig[i].name;
div.innerHTML=i+1;
element.appendChild(div);
if(o.subConfig[i].subConfig){
//arguments.callee(o.subConfig,div);

}

}

}
iterator(config,document.body);


代码还有问题,但大概的思路应该就这样吧。。