在html页面中显示html代码

问题描述:

我有一个contentEditable div,并且我想显示该div的内容的html脚本。 我正在使用bootbox提醒显示我的代码,并使用Rainbow插件突出显示语法。在html页面中显示html代码

的是我使用的代码:我还使用了xmp标签

bootbox.alert('<pre><code data-language="html">'+ document.getElementById('editor').innerHTML + '</code></pre>'); 

与此脚本:

<pre><![CDATA[ 
This is a demo, tags like <p> will 
appear literally. 
]]></pre> 

在这篇文章中表示:How to display raw html code in PRE or something like it but without escaping it,但他们都没有工作。

这就是我得到:

enter image description here

我该如何解决这个问题?

使用单位,像

var encodeHtmlEntity = function(str) { 
    var buf = []; 
    for (var i=str.length-1;i>=0;i--) { 
    buf.unshift(['&#', str[i].charCodeAt(), ';'].join('')); 
    } 
    return buf.join(''); 
}; 
bootbox.alert('<pre><code data-language="html">'+ encodeHtmlEntity(document.getElementById('editor').innerHTML)) + '</code></pre>'); 
+0

@dfsq它的创造,没有得到:P编辑 – Cilan

+0

如果你正好连接的'createTextNode'你会得到'[对象文本]'的值。您需要将结果追加到另一个元素节点。看到这个小提琴的工作代码:http://jsfiddle.net/4Mwxn/2/。 – flitig

+0

@flitig更改我的答案... – Cilan