1

我正在尝试将数据库中的值存储到 HTML5data属性中。

由于这个答案,我可以很好地逃避它们,但我该如何扭转呢?

4

2 回答 2

9

只需反转功能:

function unescapeHtml(unsafe) {
    return unsafe
        .replace(/&/g, "&")
        .replace(/&lt;/g, "<")
        .replace(/&gt;/g, ">")
        .replace(/&quot;/g, "\"")
        .replace(/&#039;/g, "'");
}

演示:http: //jsfiddle.net/wazXb/

于 2013-04-22T13:59:53.087 回答
7

要处理所有潜在字符(而不是“已知”列表),请使用浏览器的自然转义,方法是让它将 HTML 字符串转换为文本:

function unescapeHTML(string) {
   var elt = document.createElement("span");
   elt.innerHTML = string;
   return elt.innerText;
}

参考资料

于 2016-06-27T21:20:00.377 回答