[英]json to nested ul li jquery / javascript
I am creating dynamic json using javascript from a drag and drop builder, Now I am unable to convert the json to Nested Ul li. 我正在使用拖放生成器中的javascript创建动态json,现在无法将json转换为Nested Ul li。 The json is below.
json在下面。
[
{
"id": "11",
"name": "BALANCE"
},
{
"id": "p1",
"name": "Conditions",
"nodes": [
{
"id": "p1-13",
"name": "SPINAL CORD INJURY",
"nodes": [
{
"id": "p1-13-12",
"name": "STROKE",
"nodes": [
{
"id": "p1-13-12-17",
"name": "REACHING"
}
]
}
]
}
]
},
{
"id": "p1-16",
"name": "STRETCHES"
},
{
"id": "p1-11",
"name": "BALANCE"
}
]
You can create a function
and call recursively if there is nodes
in item. 您可以创建一个
function
然后在项目中有nodes
递归调用。
var json = [{"id":"11","name":"BALANCE"},{"id":"p1","name":"Conditions","nodes":[{"id":"p1-13","name":"SPINAL CORD INJURY","nodes":[{"id":"p1-13-12","name":"STROKE","nodes":[{"id":"p1-13-12-17","name":"REACHING"}]}]}]},{"id":"p1-16","name":"STRETCHES"},{"id":"p1-11","name":"BALANCE"}]; function createUl(data, $elm) { data.forEach(function(item) { var $li = $('<li><span>' + item.name + '</span></li>'); $elm.append($li); if (item.nodes) { var $ul = $('<ul></ul>'); $li.append($ul); createUl(item.nodes, $ul); } }); }; createUl(json, $('ul'));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <ul></ul>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.