jQuery replaceWith()
with callback function
<!DOCTYPE html> <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"> </script>/*w ww .ja va2 s. c om*/ <script> $(document).ready(function(){ $("button").click(function(){ $("p").replaceWith(function(n){ return "<h3>This element has index " + n + ".</h3>"; }); }); }); </script> </head> <body> <h1>This is a heading</h1> <p>This is a paragraph.</p> <p>This is another paragraph.</p> <p>This is another paragraph.</p> <button>Replace each p element</button> </body> </html>