我有一个 json 对象,如下所示。
[{
"data":{
"title":"Root"
},
"attr":{
"id":1,
"parentId":0
},
"state":"open",
"children":[{
"data":{
"title":"Stem"
},
"attr":{
"id":11,
"parentId":1
},
"state":"open",
"children":[{
"data":{
"title":"Branch 1"
},
"attr":{
"id":111,
"parentId":11
},
"state":"open",
"children":[{
"data":{
"title":"Sub Branch 1"
},
"attr":{
"id":1111,
"parentId":111
},
"state":"open",
"children":[{
"data":{
"title":"Leaf"
},
"attr":{
"id":111111,
"parentId":111
}
}]
},
{
"data":{
"title":"Sub Branch 2"
},
"attr":{
"id":111111,
"parentId":111
}
}
]
},
{
"data":{
"title":"Branch 2"
},
"attr":{
"id":119,
"parentId":11
},
"state":"open",
"children":[{
"data":{
"title":"Sub branch"
},
"attr":{
"id":120,
"parentId":119
}
}
]
}
]
}
]
}]
基本上结构看起来像这样
我有属性 (attr) 中所有节点的 ID。当给出任何节点的 ID 时,我想获取该节点及其子节点的 json。
例如。给定 ID 说 111,这个及其子的 json 将是
{
"data":{
"title":"Branch 1"
},
"attr":{
"id":111,
"parentId":11
},
"state":"open",
"children":[{
"data":{
"title":"Sub Branch 1"
},
"attr":{
"id":1111,
"parentId":111
},
"state":"open",
"children":[{
"data":{
"title":"Leaf"
},
"attr":{
"id":111111,
"parentId":111
}
}]
},
{
"data":{
"title":"Sub Branch 2"
},
"attr":{
"id":111111,
"parentId":111
}
}
]
}
我想在输入 id 111 时得到这个 json。我该怎么做?
编辑:考虑我有一个 GUI 来输入节点的 ID。并说我输入 111 我应该能够得到上面的 json。我只需要如何在 js 或 jQuery 中做到这一点。我不关心用户界面。
谢谢。!