2013-05-08 159 views
0

中的HTML代码。如果我写的东西像下面里面的textareaHTML:停止渲染DIV

<strong>test</strong> 

内textarea的,然后它显示一个div内。它以粗体字显示文本,而不是像现在这样显示html代码。所以我如何避免呈现HTML代码。我只想显示它是由用户输入的文本。

+0

http://jsfiddle.net/WPQLP/1/我不能复制你的错误。 – Madthew 2013-05-08 16:30:28

+0

@Madthew - 由于您尝试复制它不包括textarea或div,并且不会将所输入的textarea放置在div中,这并不奇怪。 – Quentin 2013-05-08 16:31:41

+0

http://jsfiddle.net/WPQLP/2/所以它现在应该工作。忘记更新djsfiddle。 – Madthew 2013-05-08 16:33:16

回答

1

您需要将<>字符转义为其HTML实体。

&lt;strong&gt;test&lt;/strong&gt; 

JSFiddle

1

你需要躲避HTML格式

var someHtmlString = "<strong>test</strong>"; 
var escaped = $("div.someClass").text(someHtmlString).html(); 

source

3

您还没有我们表现出任何代码,这应该工作,但因为您已为此标记jQuery I “会假设你有这样的:

$('div').html(
    $('textarea').val() 
); 

使用text方法来代替,那么什么用户键入的文本,而不是HTML进行处理。

$('div').text(
    $('textarea').val() 
); 

请参阅a demonstration

1

您可以使用<pre>标记,以便它按原样显示用户输入。这会保留所有格式如空格和换行

<textarea rows="4" cols="50"></textarea> 
<div> 
    <pre id="output"> 
    </pre> 
</div> 

JS

$('textarea').keyup(function(){ 
$('#output').text($(this).val()); 
}); 

http://jsfiddle.net/WPQLP/5/