2010-04-13 63 views
8

我想在JavaScript中轉義一些HTML。我怎樣才能做到這一點?有什麼方法可以在JavaScript中將'>'改爲'>'?

+0

也許我錯過了一些東西,但是關於str.replace有什麼可怕的東西?它不起作用嗎? – mpen 2010-04-13 04:17:03

+2

因爲你有更多的實體。例如,&arr; ← → • etc ......哦,你有那些非英文字符和'*喘氣*'口音等 – Warty 2010-04-13 04:19:52

回答

11

我經常使用下面的函數來進行解碼HTML Entities

function htmlDecode(input){ 
    var e = document.createElement('div'); 
    e.innerHTML = input; 
    return e.childNodes[0].nodeValue; 
} 

htmlDecode('&lt;&gt;'); // "<>" 

簡單,跨瀏覽器,並與工作全部爲HTML 4 Character Entities

+2

謝謝隊友。順便說一句,通過jQuery它會看起來像var str ='< >'; $('

'+str+'
').text(); – Somebody 2011-02-23 14:50:41

+0

謝謝@Somebody !!!您的上述評論幫助了我! – matheusvmbruno 2012-12-10 22:17:23

0

你可以創建一個虛擬的textarea,它的innerHTML設置爲你逃脫HTML [與&gt;s的HTML]並使用textarea.value

var ta = document.createElement('textarea'); 
ta.innerHTML = "&gt;"; 
alert(ta.value); 

...不得不一次在CMS使用[雖然當我用它,這是不好的做法]

相關問題