我在将以下html代码转换为json时遇到问题:
<div class="control" >
<label>Caption</label><br>
<select name="" class="dropdowntag">
<option value="Option1">Option1</option>
<option value="Option2">Option2</option>
</select>
</div>
在此结果JSON中,缺少select标签,以下是我从json2html站点中提供的转换构建器获得的结果。
{"tag":"div","class":"control","children":[
{"tag":"label","html":"Caption"},
{"tag":"br","html":""}, [
{"tag":"option","value":"Option1","html":"Option1"},
{"tag":"option","value":"Option2","html":"Option2"}
]
]}
如果删除外部div,则可以正确获取json。以下是修改后的html及其json结果:
<label>Caption</label><br>
<select name="" class="dropdowntag">
<option value="Option1">Option1</option>
<option value="Option2">Option2</option>
</select>
[
{"tag":"label","html":"Caption"},
{"tag":"br","html":""},
{"tag":"select","class":"dropdowntag","name":"","children":[
{"tag":"option","value":"Option1","html":"Option1"},
{"tag":"option","value":"Option2","html":"Option2"}
]}
]
无法找出造成此问题的原因。
注意:如果我将select标记更改为其他有效的html标记,或者仅给出除select之外的任何其他名称,它就可以正常工作。
以下是用于此目的的jquery和json2html插件的版本:
jQuery的1.11.1
jquery-ui-1.11.0
json2html-当前版本可以下载。
以下是json2html插件站点的链接:
json2html
此页面中的构建器选项卡提供了基于html构建转换器的选项。
最佳答案
正确的转换应该是
{"tag":"div","class":"control","children":[
{"tag":"label","html":"Caption"},
{"tag":"br","html":""},
{"tag":"select","class":"dropdowntag","name":"","children":[
{"tag":"option","value":"Option1","html":"Option1"},
{"tag":"option","value":"Option2","html":"Option2"}
]}
]}
我已经验证了它在json2html.com上不起作用,看起来由于某种原因,用于转换转换的DOM方法似乎不喜欢select。感谢您对此进行研究,我将对其进行调查
关于jquery - JSON2HTML-在JSON对象中剥离的选择标签,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24739115/