SimpleDao
JavaScript js 转义html字符
2019-05-27, 访问数: 2707

转义html

  1. var entityMap = {
  2. '&': '&',
  3. '<': '&lt;',
  4. '>': '&gt;',
  5. '"': '&quot;',
  6. "'": '&#39;',
  7. '/': '&#x2F;',
  8. '`': '&#x60;',
  9. '=': '&#x3D;'
  10. };
  11. function escapeHtml (string) {
  12. return String(string).replace(/[&<>"'`=\/]/g, function (s) {
  13. return entityMap[s];
  14. });
  15. }

转义字符转换成普通字符

  1. var entityMap2 = {
  2. '&amp;': '&',
  3. '&lt;': '<',
  4. '&gt;': '>',
  5. '&quot;': '"',
  6. '&#39;': "'",
  7. '&#x2F;': '/',
  8. '&#x60;': '`',
  9. '&#x3D;': '='
  10. };
  11. function unescapeHtml (string) {
  12. return String(string).replace(/&(amp|lt|gt|quot|#39|#x2F|#x60|#x3D);/ig, function (s) {
  13. return entityMap2[s];
  14. });
  15. }

删除html标签

  1. function removeHtmlTag(content) {
  2. return content.replace(/<[^<>]+?>/g,'');
  3. }

示例

  1. var content = "<div><p> text </p></div>";
  2. var escapeContent = escapeHtml(content);
  3. console.log("escapeContent: " + escapeContent);
  4. var unescapteContent = unescapeHtml(escapeContent);
  5. console.log(unescapteContent);
  6. var text = removeHtmlTag(content);
  7. console.log(text);

输出结果为:

  1. escapeContent: &lt;div&gt;&lt;p&gt; text &lt;&#x2F;p&gt;&lt;&#x2F;div&gt;
  2. unescapteContent: <div><p> text </p></div>
  3. text: text