我尝试创建一段代码来获取jquery层次结构并将其展平。我尝试使用regexps,字符串连接和元素遍历。但我总是最终得到不能完成这项工作的古怪代码。好像我已经过头了,我错过了一些简化任务的关键功能。
基本上我想要这个:
<h3>
AAA
<p>
BBB
<p>
<b>CCC</b>
</p>
DDD
</p>
EEE
</h3>
转变为:
<h3>
AAA
</h3>
<p>
BBB
</p>
<p>
<b>CCC</b>
</p>
<p>
DDD
</p>
<h3>
EEE
</h3>
我知道我的起始HTML不是有效的html,但是我从用户输入得到了这个,并且需要始终保持平坦的html层次结构,除了一些标记,例如<b>
,<u>
和{ {1}}。
答案 0 :(得分:0)
您可以使用{/ 1}}选择器,如
*
您可以不使用
过滤它var container = $('h3, h3 *')
这将返回没有'b'元素的扁平数组。
Given a dom element, how could I flatten it in jquery and/or JavaScript?