我有一個JS字符串,我想防止在我的網站消息輸入html和js注入。刪除所有html標籤,但<img>或<img/>標籤與javascript
如何從一個字符串中刪除所有的HTML標籤,除了img標籤,因爲它是用來顯示這樣的表情符號:只有
<img class="emo" src="images/emo/smile.png">
我使用下面的代碼刪除所有的HTML標籤,但它適用於<br>
標記而不是img標記。
function remove_tags(html)
{
var html = html.replace("<img>","||img||");
var tmp = document.createElement("DIV");
tmp.innerHTML = html;
html = tmp.textContent||tmp.innerText;
return html.replace("||img||","<img>");
}
要麼刪除那些HTML標記或簡單地顯示它們作爲簡單的文章,如: <script> alert("hi");</script>
但除了<img>
標籤。
請搜索在谷歌正則表達式在JavaScript –
壞消息:你仍然可以使用圖像標記注入腳本! – Scott