如何使用jQuery将元素转换为字符串

Fis*_*her 6 javascript jquery dom

我不需要innerHTML我需要innerHTML 封闭标签.让我们写一些例子:

<div id="1" style="qwe"><span class="1"></span></div>
<div id="2" style="asd"><span class="2"></span></div>
<div id="3" style="zxc"><span class="3"></span></div>
Run Code Online (Sandbox Code Playgroud)

我可以通过id获取元素:

$("#1")
Run Code Online (Sandbox Code Playgroud)

我怎么能得到这样的字符串:

<div id="1" style="qwe"><span class="1"></span></div>
Run Code Online (Sandbox Code Playgroud)

当然html()不起作用因为它只返回span.

meo*_*meo 6

你可以这样做:

alert( $('#\\31 ').wrap("<div />").parent().html() )
$('#\\31 ').unwrap()
Run Code Online (Sandbox Code Playgroud)

  • 实际上,要选择`id = 1`的元素,你需要使用`$('#\\ 31')`,而不是'$('#1')`.见http://mothereff.in/css-escapes#01.(我知道这只是一个例子,但是嘿,它不起作用.) (2认同)

Jam*_*ill 5

像这样的东西应该工作正常:

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

var outer = $("#1").outerHTML();
Run Code Online (Sandbox Code Playgroud)

这是一个工作小提琴.

附加信息

有关原始文章,请访问http://www.yelotofu.com/2008/08/jquery-outerhtml/.