极具挑战:根据html信息,生成文章多级目录。期待大神
以下问题 我搞不定,看高手如何解决:
问题描述: 需要将一段html代码(主要是h1、h2、h3) 转化为对应的json
html:
<h1>一级标题1</h1>
<h2>二级标题1-1</h2>
<h2>二级标题1-2</h2>
<h1>一级标题2</h1>
<h2>二级标题2-1</h2>
<h3>三级标题2-1-1</h3>
<h3>三级标题2-1-2</h3>
<h2>二级标题2-2</h2>
希望能生成如下的json数据 ,并存储到items 变量中:
items: [
{
'headTitle':'一级标题1',
'children':[
{'headTitle':'二级标题1-1'},
{'headTitle':'二级标题1-2'}
]
},
{
'headTitle':'一级标题2',
'children':[
{
'headTitle':'二级标题2-1',
'children':[
{'headTitle':'三级标题2-1-1'},
{'headTitle':'三级标题2-1-2'}
]
},
{
'headTitle':'二级标题2-2'
}
]
}
]
综上所述:根据html文档中的<h1><h2><h3>标签信息,生成多级目录。
建议考虑使用jquery 、lodsh 等辅助实现。
极具挑战,感谢大神
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

以下问题 我搞不定,看高手如何解决:
问题描述: 需要将一段html代码(主要是h1、h2、h3) 转化为对应的json
html:
<h1>一级标题1</h1>
<h2>二级标题1-1</h2>
<h2>二级标题1-2</h2>
<h1>一级标题2</h1>
<h2>二级标题2-1</h2>
<h3>三级标题2-1-1</h3>
<h3>三级标题2-1-2</h3>
<h2>二级标题2-2</h2>
希望能生成如下的json数据 ,并存储到items 变量中:
items: [
{
'headTitle':'一级标题1',
'children':[
{'headTitle':'二级标题1-1'},
{'headTitle':'二级标题1-2'}
]
},
{
'headTitle':'一级标题2',
'children':[
{
'headTitle':'二级标题2-1',
'children':[
{'headTitle':'三级标题2-1-1'},
{'headTitle':'三级标题2-1-2'}
]
},
{
'headTitle':'二级标题2-2'
}
]
}
]
综上所述:根据html文档中的<h1><h2><h3>标签信息,生成多级目录。
建议考虑使用jquery 、lodsh 等辅助实现。
极具挑战,感谢大神
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
正则匹配,先把h1标签中间的东西找到。然后使用一下,那个正则的子集吧好像是。再把中间的元素整出来。
另外一个朋友的解法:

再另外一个解法:

纯js、纯函数实现,可以方便的扩展到4、5、6级标题