我正在尝试将HTML映射到JSON,结构完整.是否有任何图书馆可以做到这一点,还是我需要自己编写?我想如果没有html2json库,我可以把xml2json库作为一个开始.毕竟,html只是xml的一个变种吗?
更新:好的,我应该举一个例子.我想要做的是以下内容.解析一串html:
<div>
<span>text</span>Text2
</div>
Run Code Online (Sandbox Code Playgroud)
像这样的json对象:
{
"type" : "div",
"content" : [
{
"type" : "span",
"content" : [
"Text2"
]
},
"Text2"
]
}
Run Code Online (Sandbox Code Playgroud)
注意:如果你没有注意到标签,我正在寻找Javascript的解决方案
我浪费了太多时间在这上面......递归部分非常虚幻.
对于给定的HTML结构,深度未知,我需要转换为JSON.
(我使用的是我正在构建的一些YAML i18n翻译系统)
我的一般想法是深入到它找到INPUT,然后创建一个具有键/值的span.innerHTML/input.value对象,并返回该对象,因此它将是最后<span class="title">到达的KEY的VALUE .
(是的,它有点复杂,但开发非常有趣)
JSBIN游乐场 - 实时代码示例
我不能让我的递归函数正常工作,输出我想要的JSON ...
<ul>
<li>
<span class="title">footer</span>
<ul>
<li>
<span>statement</span>
<input type="text" value="xxx">
</li>
</ul>
</li>
<li>
<span class="title">landing</span>
<ul>
<li>
<span>page_title</span>
<input type="text" value="yyy">
</li>
<li>
<span>page_sub_title</span>
<input type="text" value="xxx">
</li>
<li>
<span class="title">pricing</span>
<ul class="level11">
<li>
<span>title</span>
<input type="text" value="aaa">
</li>
<li>
<span>cost</span>
<input type="text" value="xxx">
</li>
</ul>
</li>
</ul>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
{
footer : {
statement : 'xxx'
}, …Run Code Online (Sandbox Code Playgroud)