Jquery HTML()函数 - 如何包含选择器Html

时间:2011-10-27 15:03:18

标签: jquery

  

可能重复:
  Get selected element's outer HTML

我怀疑这是一个非常愚蠢的问题,但是当你在JQuery中调用Html()函数时,它会返回选定的节点内部Html。无论如何在返回的Html中包含所选的注释?例如,在以下HTML

<div class="demo-container">
  <div class="demo-box">Demonstration Box</div>
</div>

此调用$('div.demo-container').html();返回

<div class="demo-box">Demonstration Box</div>

如何让它返回

<div class="demo-container">
  <div class="demo-box">Demonstration Box</div>
</div>

感谢您的帮助!

4 个答案:

答案 0 :(得分:2)

你可以将它的副本包装在一个无聊的div中并获取它的HTML:

var str = $('div.demo-container').clone().wrap('<div/>').parent().html();

答案 1 :(得分:1)

撰写此扩展程序,例如here

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

然后当你想要使用它时:

$('#myTag').outerHTML();

答案 2 :(得分:0)

$('div.demo-container').parent().html() //Only works in this specific situation

$('div.demo-container')[0].outerHTML; //Only works in IE and Chrome

答案 3 :(得分:0)

这可能对您有用:

$('div.demo-container').parent().html();