js遞歸無限層級數據

//遞歸結構
var data=[{
	"id": 0,
	"folder": "sit et quis",
	"lower": [{
			"id": 1,
			"folder": "non est facere"
		},
		{
			"id": 2,
			"folder": "alias odio sit 一級B",
			"lower": [{
					"id": 9,
					"folder": "alias odio sit 二級B-1"
				},
				{
					"id": 10,
					"folder": "et omnis dolorem 二級B-2",
					"lower": [{
							"id": 12,
							"folder": "et omnis dolorem 三級B-2-1"
						},
						{
							"id": 8,
							"folder": " et omnis dolorem 三級B-2-2"
						}
					]
				},
				{
					"id": 11,
					"folder": "provident id volupta 二級B-3"
				}
			]
		}
	]
},
{"id": 110,"folder": "quo vero reiciendis"}  
];

var strText = '';
//遞歸
function dg(ml,display){
    var d=display ? "display" : "";
    strText+="<ul class='"+d+"'>";
    for(var i=0;i<ml.length;i++){
        strText+="<li  ><span>"+ml[i].folder+"</span>";    
        if(ml[i].lower){
            dg(ml[i].lower,true);
        }else{
            strText+="<ul class='display box'></ul>";   
        }
        strText+="</li>"
    }
    strText+="</ul>"
    return strText;
}

dg(data) //調用
.display{
    display:none;
}

 

發佈了75 篇原創文章 · 獲贊 28 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章