好的,现在我这里有一个无序列表:
<ul id="mycustomid">
<li><a href="url of Item A" title="sometitle">Item A</a>
<ul class="children">
<li><a href="url of Child1 of A" title="sometitle">Child1 of A</a>
<ul class="children">
<li><a href="url of Grandchild of A" title="sometitle">Grandchild of A</a>
<ul class="children">
<li><a href="url of Grand Grand child of A" title="sometitle">Grand Grand child of A</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li><a href="url of Item B" title="sometitle">Item B</a></li>
<li><a href="url of Item C" title="sometitle">Item C</a></li>
</ul>
基本上,我想把这些数据转换成JSON实体。我想用jQuery完成这个任务,但我发现这很困难。上面的列表只是一个例子,实际上,我的列表理想情况下应该有更多的子节点,并且可能是'n'层深(意思是,它将有孙子的孙子的孙子...或更多)。我已经失去了无数个小时的睡眠,但我觉得我一事无成 :(
我想提取这些内容:锚点内的文本、锚点的URL和锚点的标题,并将它们放到一个JSON实体中。
上面列表的JSON格式如下:
{
name: "Item A",
url: "url of Item A",
title: "sometitle",
children: [{
name: "Child1 of A",
url: "url of Child1 of A",
title: "sometitle",
children: [{
name: "Grandchild of A",
url: "url of Grandchild of A",
title: "sometitle",
children: [{
name: "Grand Grand child of A",
url: "url of Grand Grand child of A",
title: "sometitle",
children: []
}]
}]
}]
},
{
name: "Item B",
url: "url of Item B",
title: "sometitle",
children: []
},
{
name: "Item C",
url: "url of Item C",
title: "sometitle",
children: []
}
一些有用的参考资料:
Javascript解决方案: 使用Javascript/Jquery遍历无序列表
^ 这个可能有效,但我需要的JSON输出格式如上所示,而不是该脚本输出的格式:(
其他参考资料:
请有人帮帮忙 :(
已经苦思冥想了很多个彻夜未眠的夜晚。。(注:编写此页面及代码大约花费了40多分钟)
[ {}, {}, {} ]
- Samuel Meacham