Skip to main content

Encoder ou décoder des entités HTML (html entities) en Javascript

Il peut parfois être utile d’encoder ou décoder du code HTML directement avec Javascript. Contrairement à PHP, ce langage n’a pas prévu de fonction native afin de réaliser cette opération.

Pour ce faire, il est nécessaire de créer une textarea temporaire nous permettant de manipuler les données. Vous trouverez ci-dessous deux propositions de scripts. Avec et sans jQuery, pour encoder puis décoder du code HTML.

Décodage HTML

// Decode en JS
function decodeHTMLEntities(text) {
  var textArea = document.createElement('textarea');
  textArea.innerHTML = text;
  return textArea.value;
}

// Decode avec jQuery
function decodeHTMLEntities(text) {
  return $("<textarea/>").html(text).text();
}

Encodage HTML

// Encode en JS
function encodeHTMLEntities(text) {
  var textArea = document.createElement('textarea');
  textArea.innerText = text;
  return textArea.innerHTML;
}

// Encode avec jQuery
function encodeHTMLEntities(text) {
  return $("<textarea/>").text(text).html();
}

Source : https://medium.com/@tertiumnon/js-how-to-decode-html-entities-8ea807a140e5

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *