鍍金池/ 問答/HTML5  HTML/ 怎么把一個(gè)string里所有涉及到轉(zhuǎn)義的HTML字符,進(jìn)行完整轉(zhuǎn)義?

怎么把一個(gè)string里所有涉及到轉(zhuǎn)義的HTML字符,進(jìn)行完整轉(zhuǎn)義?

我們從別處獲取一個(gè)string,是這個(gè)樣子的:

str1="這里是一個(gè)<h1>標(biāo)簽,這是一個(gè)特殊的符號,?"

我們需要把類似這樣,還有特殊符號的字符串,作為innerHTML插入到一個(gè)p標(biāo)簽里,讓它在頁面上顯示成上面的樣子。但是我們不能直接插,因?yàn)橛修D(zhuǎn)義字符的原因,必須把上面的內(nèi)容改為如下的樣子才能插入:

str2="這里是一個(gè)&lt;h1&gt;標(biāo)簽,這是一個(gè)特殊的符號,&aelig;"

只有這樣,插入<p>標(biāo)簽的,才能正常在頁面上展示成第一個(gè)Str應(yīng)該的樣子。
我們知道有很多這樣需要轉(zhuǎn)義的字符,列表如下:
http://tool.oschina.net/commo...

請問,我們怎么能把一個(gè)str1變成str2?有沒有現(xiàn)成的庫可以用?
多謝

回答
編輯回答
夢囈

傳送門

let str1 = "這里是一個(gè)<h1>標(biāo)簽,這是一個(gè)特殊的符號,?";
let div=document.createElement('div');
div.textContent=str1;
ele.innerHTML=div.innerHTML;

先搜索,實(shí)在搜不到再提問

2017年5月13日 09:21
編輯回答
蟲児飛
<p id="div"></p>
<script>
    str1 = "這里是一個(gè)<h1>標(biāo)簽,這是一個(gè)特殊的符號,?";
    document.getElementById('div').innerText = str1;
</script>

不能直接這樣寫嗎?

2017年7月20日 02:40