![]() |
|
首页 │ Apache │ Linux│ Java│ MySQL│ 注册│帮助 | |||
lanArr为二维数组,函数compositor对lanArr排序,得到lan2Arr数组,我想得到效果为:
顶层1
第二层1
第三层1
第二层2
第三层2
第二层3
顶层2
第二层4
于是我使用递归函数,但是总是显示出来这样的效果
顶层1
第二层1
第三层1
然后就没有了,折腾了一个下午都没搞定,郁闷死我了,请各位高手指点一二,谢谢,以下是源代码
[PHP]
<script language="JavaScript">
var lanArr=new Array();
lanArr[0] = new Array();
lanArr[0]['id'] = 1;
lanArr[0]['fid'] = 0;
lanArr[0]['name'] = "顶层1";
lanArr[0]['layer'] = "0";
lanArr[1] = new Array();
lanArr[1]['id'] = 2;
lanArr[1]['fid'] = 0;
lanArr[1]['name'] = "顶层2";
lanArr[1]['layer'] = "0";
lanArr[2] = new Array();
lanArr[2]['id'] = 3;
lanArr[2]['fid'] = 1;
lanArr[2]['name'] = "第二层1";
lanArr[2]['layer'] = "1";
lanArr[3] = new Array();
lanArr[3]['id'] = 4;
lanArr[3]['fid'] = 1;
lanArr[3]['name'] = "第二层2";
lanArr[3]['layer'] = "1";
lanArr[4] = new Array();
lanArr[4]['id'] = 5;
lanArr[4]['fid'] = 1;
lanArr[4]['name'] = "第二层3";
lanArr[4]['layer'] = "1";
lanArr[5] = new Array();
lanArr[5]['id'] = 6;
lanArr[5]['fid'] = 3;
lanArr[5]['name'] = "第三层1";
lanArr[5]['layer'] = "2";
lanArr[6] = new Array();
lanArr[6]['id'] = 7;
lanArr[6]['fid'] = 4;
lanArr[6]['name'] = "第三层2";
lanArr[6]['layer'] = "2";
lanArr[7] = new Array();
lanArr[7]['id'] = 8;
lanArr[7]['fid'] = 2;
lanArr[7]['name'] = "第二层4";
lanArr[7]['layer'] = "1";
var lan2Arr = new Array();
var k=0;
function compositor(fid){
for (i=0; i
");
}
</script>
[/PHP]

