2

我有以下标记:

<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 填充了“关于”文本区域的内容,但是它没有被编码为 HTML,而是<p>test</p>在我希望它以test我在 CSS 中具有的任何样式显示时显示p

我究竟做错了什么?

4

4 回答 4

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());});
于 2012-06-19T08:39:24.090 回答
1

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

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

演示

希望这可以帮助

于 2012-06-19T08:35:22.687 回答
1

使用.html()将内容放置为 html。

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

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

于 2012-06-19T08:37:25.900 回答
0

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

于 2012-06-19T08:39:28.177 回答