2013-04-05 148 views
4

我已经在它的HTML变量是这样的:jQuery的.append()不渲染HTML实体

var html = '<div>Hello, you&#39;re awesome!</div>'; 

我想将它附加到一个元素$("body").append(html)由于某种原因,它不是HTML实体解码。我试过$("body").append($(html));,但没有奏效。我的文字卡在元素内,我无法单独将它们放在一起。

有没有什么办法可以将HTML内的基于文本的实体附加到另一个元素中,并让html实体在页面上呈现?

我读过一堆在stackoverflow reguarding html实体上的帖子,它似乎没有包括像这样的变量中的HTML &文本。

+1

适合我的作品:http://jsfiddle.net/zF4Va/1/ – Blender 2013-04-05 20:40:18

+0

喜欢这个? http://jsfiddle.net/ruALs/ – 2013-04-05 20:40:57

+0

啊我的文字是'&#39;'!我应该在我的环境之外检查并确认。谢谢! – ThomasReggi 2013-04-05 20:43:25

回答

5

试试这个:

var html = $('<div>Hello, you&#39;re awesome!</div>'); 
$("body").append(html) 

Demo here

+1

这对我有效,但我不得不将.get(0)添加到最后。 – zzxjoanw 2017-06-27 14:58:11

0

这可能是可能是您的页面没有加载完成,而jQuery代码试图追加的内容。尝试:

$(document).ready(function(){ 
    var html = '<div>Hello, you&#39;re awesome!</div>'; 
    $('body').append(html) 
}); 

而且我建议只使用单引号,除非您需要使用转义字符。