for循环 递归 如何保持 for中变量
时间:2011-11-29
来源:互联网
//创建 目录 树 obj是目录集合对象,o是容器对象, parentI 父循环变量值。 createCat:function(obj,o,parentI){ for(i=0;i<obj.length;i++){ var id=obj[i].code; var subid="sub_"+id; var ul= document.createElement("ul"); var li=document.createElement("li"); li.className="comli"; var img=document.createElement("img"); img.className="img"; var rd=document.createElement("input"); var span=document.createElement("span"); span.innerHTML=obj[i].name; rd.type="radio";rd.id=id;rd.className="rd";rd.name="rd"; if(id==rdid){rd.checked=true;sys.Category.parentid=rdid;span.style.color="red";} rd.onclick=(function(id,span){return function(){var spanarr=$t($("catDiv"),"span"); if(spanarr)for(k=0;k<spanarr.length;k++)spanarr[k].style.color="black"; sys.Category.parentid=id;span.style.color="red"; }})(id,span); li.appendChild(img); li.appendChild(rd);li.appendChild(span);ul.appendChild(li); if(obj[i].sub.length!=0){ var oli=document.createElement("li"); oli.id=subid; oli.className="subli"; if(i==obj.length-1||obj[i].level=="1")oli.className="subli1"; var s= i; sys.Category.createCat(obj[i].sub,oli,rdid,s); alert(parentI); i=parentI; ul.appendChild(oli); } o.appendChild(ul); } }
数据结构{success:true,catid:'C000013',cattree:[{name:'Wooden',code:'C000001',level:'1',sub:[{name:'ABC',code:'C000004',level:'2',sub:[{name:'tets',code:'C000009',level:'3',sub:[{name:'wodioqwe',code:'C000010',level:'4',sub:[{name:'opi',code:'C000011',level:'5',sub:[]}]}]}]},{name:'DEF',code:'C000005',level:'2',sub:[]},{name:'Jiaju',code:'C000007',level:'2',sub:[]}]},{name:'OuterDoor',code:'C000002',level:'1',sub:[{name:'HGJ',code:'C000006',level:'2',sub:[{name:'fff',code:'C000012',level:'3',sub:[]}]}]},{name:'Furniture',code:'C000003',level:'1',sub:[]},{name:'Paper tool',code:'C000008',level:'1',sub:[]}],catname:'',catabb:'',catdesc:'',catparent:''}
我在函数里传入父 循环变量。但是好像不对,请大家给我点提示
作者: kaizi_sun 发布时间: 2011-11-29
作者: diky87688973 发布时间: 2011-11-29
作者: qiujialongjjj 发布时间: 2011-11-29
作者: kaizi_sun 发布时间: 2011-11-29
作者: kaizi_sun 发布时间: 2011-11-29
作者: qiujialongjjj 发布时间: 2011-11-29
那就在数据处理时把数据转化成list形式
用list形式是什么意思呢? 我再前台用函数把它拼接成树
作者: kaizi_sun 发布时间: 2011-11-29
0 Object { Name="CladMeasurementInsert", DisPlayName="测试", CanBeQuery="False", 更多...} 1 Object { Name="CladMeasurementInsert", DisPlayName="测试", CanBeQuery="False", 更多...} 2 Object { Name="CladMeasurementInsert", DisPlayName="测试", CanBeQuery="False", 更多...} 3 Object { Name="CladMeasurementInsert", DisPlayName="测试", CanBeQuery="False", 更多...} 4 Object { Name="CladMeasurementInsert", DisPlayName="测试", CanBeQuery="False", 更多...}
作者: qiujialongjjj 发布时间: 2011-11-29
我的目的是把下面这样的json结构 用treeview形式 展示出来。 结构是无极限的。
对象深度遍历,盲编版,未经测试:
function eachJsonObj(jsonObj, node){
for (var k in jsonObj) {
switch(typeof jsonObj[k]){
case 'string':
case 'number':
case 'boolean':
// 基础类型或没必要再遍历下去的。就直接以叶显示
// 构造叶子节点。。
var subNode = xxx;
node.add(subNode);
subNode = null;
break;
default :
if(jsonObj[k] == null){
// 构造叶子节点
var subNode = xxx;
node.add(subNode);
subNode = null;
} else {
// 构造支节点
var node;
eachJsonObj(jsonObj[k], node);
node = null;
}
break;
}
}
}
作者: diky87688973 发布时间: 2011-11-29
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28