上面是数据库的数据. 一个 area_id, 一个area_parentid把数据查出来得到json数据数组如下:
json如下:[{"area_id":1,"area_name":"a","area_parentid":0,"area_sort":0,"area_level":0,"area_createdate":"\/Date(-62135596800000)\/","area_re":null},{"area_id":2,"area_name":"b","area_parentid":0,"area_sort":0,"area_level":0,"area_createdate":"\/Date(-62135596800000)\/","area_re":null},{"area_id":3,"area_name":"c","area_parentid":0,"area_sort":0,"area_level":0,"area_createdate":"\/Date(-62135596800000)\/","area_re":null},{"area_id":4,"area_name":"a1","area_parentid":0,"area_sort":0,"area_level":0,"area_createdate":"\/Date(-62135596800000)\/","area_re":null},{"area_id":5,"area_name":"a2","area_parentid":0,"area_sort":0,"area_level":0,"area_createdate":"\/Date(-62135596800000)\/","area_re":null},{"area_id":6,"area_name":"a3","area_parentid":0,"area_sort":0,"area_level":0,"area_createdate":"\/Date(-62135596800000)\/","area_re":null},{"area_id":7,"area_name":"a31","area_parentid":0,"area_sort":0,"area_level":0,"area_createdate":"\/Date(-62135596800000)\/","area_re":null},{"area_id":8,"area_name":"a32","area_parentid":0,"area_sort":0,"area_level":0,"area_createdate":"\/Date(-62135596800000)\/","area_re":null},{"area_id":9,"area_name":"a33","area_parentid":0,"area_sort":0,"area_level":0,"area_createdate":"\/Date(-62135596800000)\/","area_re":null},{"area_id":10,"area_name":"b1","area_parentid":0,"area_sort":0,"area_level":0,"area_createdate":"\/Date(-62135596800000)\/","area_re":null},{"area_id":11,"area_name":"b2","area_parentid":0,"area_sort":0,"area_level":0,"area_createdate":"\/Date(-62135596800000)\/","area_re":null},{"area_id":12,"area_name":"b3","area_parentid":0,"area_sort":0,"area_level":0,"area_createdate":"\/Date(-62135596800000)\/","area_re":null},{"area_id":13,"area_name":"c1","area_parentid":0,"area_sort":0,"area_level":0,"area_createdate":"\/Date(-62135596800000)\/","area_re":null},{"area_id":14,"area_name":"c2","area_parentid":0,"area_sort":0,"area_level":0,"area_createdate":"\/Date(-62135596800000)\/","area_re":null},{"area_id":15,"area_name":"c3","area_parentid":0,"area_sort":0,"area_level":0,"area_createdate":"\/Date(-62135596800000)\/","area_re":null}]
area_id, 一个area_parentid,
我像父区域下有子区域:
如:
<ul id="red" class="treeview-red">
<li><span>Item 1</span>
<ul>
<li><span>Item 1.0</span>
<ul>
<li><span>Item 1.0.0</span></li>
</ul>
</li>
<li><span>Item 1.1</span></li>
<li><span>Item 1.2</span>
<ul>
<li><span>Item 1.2.0</span>
<ul>
<li><span>Item 1.2.0.0</span></li>
<li><span>Item 1.2.0.1</span></li>
<li><span>Item 1.2.0.2</span></li>
</ul>
</li>
<li><span>Item 1.2.1</span>
<ul>
<li><span>Item 1.2.1.0</span></li>
</ul>
</li>
<li><span>Item 1.2.2</span>
<ul>
<li><span>Item 1.2.2.0</span></li>
<li><span>Item 1.2.2.1</span></li>
<li><span>Item 1.2.2.2</span></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li><span>Item 2</span>
<ul>
<li><span>Item 2.0</span>
<ul>
<li><span>Item 2.0.0</span>
<ul>
<li><span>Item 2.0.0.0</span></li>
<li><span>Item 2.0.0.1</span></li>
</ul>
</li>
</ul>
</li>
<li><span>Item 2.1</span>
<ul>
<li><span>Item 2.1.0</span>
<ul>
<li><span>Item 2.1.0.0</span></li>
</ul>
</li>
<li><span>Item 2.1.1</span>
<ul>
<li><span>Item 2.1.1.0</span></li>
<li><span>Item 2.1.1.1</span></li>
<li><span>Item 2.1.1.2</span></li>
</ul>
</li>
<li><span>Item 2.1.2</span>
<ul>
<li><span>Item 2.1.2.0</span></li>
<li><span>Item 2.1.2.1</span></li>
<li><span>Item 2.1.2.2</span></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li class="open"><span>Item 3</span>
<ul>
<li class="open"><span>Item 3.0</span>
<ul>
<li><span>Item 3.0.0</span></li>
<li><span>Item 3.0.1</span>
<ul>
<li><span>Item 3.0.1.0</span></li>
<li><span>Item 3.0.1.1</span></li>
</ul>
</li>
<li><span>Item 3.0.2</span>
<ul>
<li><span>Item 3.0.2.0</span></li>
<li><span>Item 3.0.2.1</span></li>
<li><span>Item 3.0.2.2</span></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
你的QQ是多少. 我加你 . 帮个忙就是这个意思:
这样的js数组
id, parent _id, name
1 0 a
2 0 b
3 1 a1
4 1 a2
5 2 b1
6 2 b2
<ul>
<li>a</li>
<ul>
<li>a1</li>
<li>a2</li>
</ul>
</li>
<li>b</li>
<ul>
<li>b1</li>
<li>b2</li>
</ul>
</li>
</ul>想要通过上面的js数组来组合成下面的html.用递归怎么实现, js来操作
[{area_parentid:"1",area:[{area_id:"4",area_name:"a1"},{area_id:"5",area_name:"a2"}]}]
然后把不是父类的东西放到另一个数组里。
然后写个方法返回一个父类下的所有子类的数据。(这里可以直接返回成HMTL格式的东西)
然后循环所有父类数组。再调用你写的递归函数。
把得到的结果用字符串一个一个接起来。
然后把这个字符串放到一个ul里
//获得你要的子类html
function a(b,fid)//子类的数组 父类ID
{
//for (var i=0;i<b.length;i++){
//判断b[i].infexof(fid)!=-1
c = c+ "<li>子类中你需要的值</li>";
}
c=c+"</ul>";
return c;
}
var d="";
function b()
{
//循环你的父类数组
//生成你要的父类html 如:d=“<ul><li>a</li>";
//调用上面的函数取得子类的html。 b+=a(子类数组,父类ID);
}
id, parent _id, name
1 0 a
2 0 b
3 1 a1
4 1 a2
5 2 b1
6 2 b2你具体写下啊
var a=new Array();
var b=new Array();
for(int i=0;i<daa.length;i++)
{
if(daa[i].area_parentid == 0) //==0 是给父类的数组赋值 ===1 给子类数组赋值
{
a[i] =daa[i].area_id + daa[i].area_name+```````后面是全部json里的
}else
{
a[i] =daa[i].area_id + daa[i].area_name+```````后面是全部json里的
}
}