[jQuery] replaceWith - DOM Replacement

<script>
$(function(){
  $('#btn0').click(function(){
    $('#sample0 .red').replaceWith('<li class="green"></li>');
  });
});
</script>

<body>
<div id="sample0">
<ul>
<li class="red"></li>
<li class="red"></li>
<li class="blue"></li>
<li class="red"></li>
<li class="red"></li>
</ul>
</div>
</body>

selector.replaceAll( html:string )
指定したselectorの要素をhtmlに置き換える。

置換する

<script>
$(function(){
  $('#btn1').click(function(){
    $('#sample1 .red').replaceWith(['<li class="green"></li>','<li class="blue"></li>']);
  });
});
</script>

<body>
<div id="sample1">
<ul>
<li class="red"></li>
<li class="red"></li>
<li class="blue"></li>
<li class="red"></li>
<li class="red"></li>
</ul>
</div>
</body>

selector.replaceAll( arr:array )
指定したselectorの要素をarrに格納されたhtmlコードに置き換える。

置換する

<script>
$(function(){
  $('#sample2 .red').replaceWith( function(){
    return '<li class="green"></li>';
  } );
});
</script>

<body>
<div id="sample2">
<ul>
<li class="red"></li>
<li class="red"></li>
<li class="blue"></li>
<li class="red"></li>
<li class="red"></li>
</ul>
</div>
</body>

selector.replaceAll( function )
arrに格納されたselectorの要素をfunctionの返り値に置き換える。

置換する