Конвертировать специальные символы в HTML в Javascript - PullRequest
108 голосов
/ 24 апреля 2009

Кто-нибудь знает, как преобразовать специальные символы в HTML в Javascript?

Пример:

  • & (амперсанд) становится &amp.
  • " (двойная кавычка) становится &quot, если ENT_NOQUOTES не установлено.
  • ' (одинарная кавычка) становится &#039 только при установленном ENT_QUOTES.
  • < (меньше чем) становится &lt.
  • > (больше чем) становится &gt.

Ответы [ 23 ]

0 голосов
/ 31 августа 2009
function escape (text)
{
  return text.replace(/[<>\&\"\']/g, function(c) {
    return '&#' + c.charCodeAt(0) + ';';
  });
}

alert(escape("<>&'\""));
0 голосов
/ 03 марта 2010

Да, но если вам нужно вставить результирующую строку куда-нибудь без ее обратного преобразования, вам нужно сделать:

str.replace(/'/g,"&amp;amp;#39;"); // and so on
0 голосов
/ 07 июня 2012

Используйте функцию javaScript escape () , которая позволяет кодировать строки.

например.

escape("yourString");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...