日期:2014-05-16  浏览次数:20318 次

jquery each 嵌套 问题

$("span").each(function(){ var xx=$(this).html(); $(this).replaceWith(xx); }) 

<span>hi1<span>hi2hi2</span>hi1</span><span>hi3</span>  


问题:
 当有span嵌套时,上面运行不给力,去除不掉嵌套中的 hi2的 span标签 ? 

------解决方案--------------------
引用:
引用:定位他们的父级
1.  $('xxx').text();
2.  $('xxx').html().replace(/<\/?span[^>]*?>/ig,"");

能否贴一个测试过能用的呢? 谢谢


 <div id="spnas">
<span>hi1<span>hi2hi2</span>hi1</span><span>hi3</span>  
 </div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script>
  alert( $('#spnas').text() ) //简单方法
  alert( $('#spnas').html().replace(/<\/?span[^>]*?>/ig,"") ) //为保留其它标签
$('#spnas').html(  $('#spnas').text() ) );  //重新设置HTML
</script>