Jquery – In jQuery, are there any function that similar to html() or text() but return the whole content of matched component


For example, if the match is <div class="class1">Hello world</div>, I need to return

<div class="class1">Hello world</div>

not just "Hello world".


Best Solution

There's no built-in function for getting the outerHTML, but you can use this:

jQuery.fn.outerHTML = function(s) {
return (s)
  ? this.before(s).remove()
  : jQuery("<p>").append(this.eq(0).clone()).html();

Then in your selector:
$('.class1').outerHTML() will give you what you are looking for.

Source of function