我要为该项目构建一个论坛,但是现在我正面临这个问题,我希望用户能够发布他们的HTML
源代码,因为它在forum
中工作
但问题是代码在从我的数据库中检索时会运行或分散我的设计。
我尝试在repalce()
中使用jQuery
,但我只能replace < with <
,但我想要一个能够替换>,",'
和&
等其他功能的功能所以我的问题是如何更新此功能。
function convert(div){
var str = $(div).html();
var str2 = str.replace(/</g,"<");
var sta = $(div).html(str2);
return sta;
}
上面的代码可以替换<
,但当我尝试在函数中包含>,",'
和&
时,它将停止工作,我该如何才能使其正常工作。
提前致谢。
答案 0 :(得分:2)
将其粘贴到<pre>
或<code>
个标记中,或两者兼容,并确保在将内容插入标记时使用text()
function convert(div){
var str = $(div).html();
var sta = $('<code />', {text : str});
return sta;
}
var result = convert( $('#test') );
$('#result').html(result)
#result {
white-space : pre;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="test">
<span>
<p>TEST</p>
</span>
</div>
<br />
<div id="result">
<code>
将保留代码,<pre>
将保留空格,但还有CSS white-space
属性,可以使用{<pre>
标记作为pre
标记1}}设置