Heim >Web-Frontend >js-Tutorial >Wie kann ich HTML-Entitäten mit JavaScript oder jQuery dekodieren?

Wie kann ich HTML-Entitäten mit JavaScript oder jQuery dekodieren?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-20 15:25:10621Durchsuche

How Can I Decode HTML Entities Using JavaScript or jQuery?

HTML-Entitäten mit JavaScript/jQuery dekodieren

In der Webentwicklung ist es oft notwendig, HTML-Entitäten zu dekodieren, um Sonderzeichen korrekt anzuzeigen. In dieser Frage wird untersucht, wie dies mithilfe von JavaScript oder jQuery erreicht werden kann.

Lösung 1: Verwendung von jQuery

Der bereitgestellte jQuery-Code kann zwar HTML-Entitäten dekodieren, weist jedoch potenzielle Nachteile auf auf Leistung und Sicherheit. Eine sicherere und optimiertere Funktion wird empfohlen:

var decodeEntities = (function() {
  // Internal element for HTML parsing
  var element = document.createElement('div');

  function decodeHTMLEntities(str) {
    if (str && typeof str === 'string') {
      // Sanitize HTML tags
      str = str.replace(/<script[^>]*>([\S\s]*?)<\/script>/gmi, '');
      str = str.replace(/<\/?\w(?:[^"'>]|"[^"]*"|'[^']*')*>/gmi, '');

      // Decode entities
      element.innerHTML = str;
      str = element.textContent;
      element.textContent = '';
    }

    return str;
  }

  return decodeHTMLEntities;
})();

Verwendung:

var decodedString = decodeEntities("&amp;amp;");

Lösung 2: Verwendung eines jQuery-Plugins

Die decodeEntities-Funktion kann einfach in eine jQuery umgewandelt werden Plugin:

jQuery.decodeEntities = decodeHTMLEntities;

Verwendung:

$(".selector").text(jQuery.decodeEntities("&amp;amp;"));

Beispiel:

Betrachten Sie die Eingabezeichenfolge „var var“

Das obige ist der detaillierte Inhalt vonWie kann ich HTML-Entitäten mit JavaScript oder jQuery dekodieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn