jquery用<ul> </ul> </ol>替换所有<ol>

时间:2012-10-01 18:49:09

标签: javascript jquery regex

鉴于以下dom结构,我想将有序列表转换为无序列表。

<div class="wrapper"> 
  <ol>
    <li><div>foo</div></li>
    <ol>
      <li><div>bar</div></li>
    </ol>
    <li><div>batz</div></li>
  </ol>
</div>

这样做的最佳方式是什么?

2 个答案:

答案 0 :(得分:4)

您应该使用jQuery replaceWith

答案 1 :(得分:3)

好吧,我必须从内到外工作,只有replaceWith没有工作,因为它只替换了外部标签,并没有取代内部标签,所以我这样解决了:

$($('.wrapper').find('ol').get().reverse()).each(function(){
  $(this).replaceWith($('<ul>'+$(this).html()+'</ul>'))
})

如果有人有更好的解决方案,我会很高兴听到它。