如何在DIv AS HTML内容中显示文本区域的HTML内容而不是文本?

时间:2012-06-19 08:32:08

标签: javascript jquery html textarea

我有以下标记:

<input id="displayBuffer" type="hidden">
<textarea id="about" rows="2" name="about" cols="20" aria-hidden="true"><p>test</p></textarea>
<input type="button" onclick="javascript:
$('#displayBuffer').val($('#about').html());
$('#displayAbout').html(unescape($('#displayBuffer').val()));"
 name="Preview" value="Preview">

当点击“预览”按钮时,div会填充“about”文本区域的内容,但它不会被编码为HTML,但是当我想要显示{{1}时它显示<p>test</p>我在test的CSS中拥有的任何风格。

我做错了什么?

4 个答案:

答案 0 :(得分:1)

像下面这样的东西应该这样做

$('your-container').html($('#about').val());

<强> DEMO

希望这有帮助

答案 1 :(得分:1)

使用.html()将内容设为html。

$('#show').click(function() {
    $('#Preview').html($('#about').val());
});​

http://jsfiddle.net/LCwgc/1/

答案 2 :(得分:1)

<textarea id="about" rows="2" name="about" cols="20" aria-hidden="true"><p>test</p></textarea>
<div id='displayAbout'>ale</div>
<input type="button" id='preview' name="Preview" value="Preview">​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

缓冲区无用:

$("#preview").click(function() {$('#displayAbout').html($('#about').val());});

答案 3 :(得分:0)

通过HTML语法,textarea元素不得包含标记,只能包含文本。您需要一种不同的方法,可能是具有div属性的元素(例如contenteditable)。