2013-04-05 109 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) 
}); 

而且我建議只使用單引號,除非您需要使用轉義字符。