2013-05-08 138 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/