使用JQuery将HTML标记作为字符串返回

时间:2012-02-01 17:12:36

标签: jquery html string

我使用JQuery创建了一个DOM片段:

var $content = $("<div /", {id:"content"})

我想将片段输出为字符串,所以我尝试了:

$content.html();

返回一个空字符串,因为没有子节点。如何返回包含以下内容的字符串:

<div id="content" />

2 个答案:

答案 0 :(得分:5)

jQuery在其API中没有任何内容可以直接执行此操作,但您可以使用本机.outerHTML属性。

$content[0].outerHTML

...但是Firefox不支持这个,所以你可以做这样的事情......

$content[0].outerHTML || $('<div>').append($content.clone()).html();

http://jsfiddle.net/m22fn/

请注意,<div>代码无法自行关闭。

答案 1 :(得分:0)

Here是我之前回答的问题的链接,我认为这符合您的要求。

如果您的第一行代码编写如下:

,那么最好也是最好的

var $content = $("<div></div>", {id:"content"});

这样它就是有效的HTML。