这是我第一个问题的第二部分: https://stackoverflow.com/questions/21352305/jquery-html-method-tags-auto-closure-issue-void-tags?noredirect=1#comment32194709_21352305 如果我使用:
var xml='<parameter name="lg2CacheSize" description="Vex cache size" type="integer" min="12" max="12"/><parameter name="lg2CacheSize" description="Vex cache size" type="integer" min="12" max="12"/>'
$("#dummydiv").html(xml);
为什么浏览器将元素包装在一起?
所以不要解析像
<parameter></parameter>
<parameter></parameter>
它像
一样解析<parameter><parameter></parameter></parameter>
如何在第一个实例中解析?
http://fiddle.jshell.net/h6dLK/3/,检查黑色Div以观看dom树。
答案 0 :(得分:2)
它正在尝试将XML解析为(无效)HTML,其中<foo />
表示“带有尾随/
的开始标记”而不是“空元素标记”。
它在末尾添加了结束标记,因为它已经到达字符串的末尾,两个打开的元素仍然打开。
如果要解析XML,请使用DOMParser
。不要试图像HTML那样对待它。