Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
HTML in XMLHttpRequest
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since Juli 2015.
* Some parts of this feature may have varying levels of support.
Die W3C-XMLHttpRequest Spezifikation fügtHTML-Parsing-Unterstützung zuXMLHttpRequest hinzu, das ursprünglich nurXML-Parsing unterstützte. Diese Funktion ermöglicht es Webanwendungen, eine HTML-Ressource als geparstesDOM unter Verwendung vonXMLHttpRequest zu erhalten.
Um einen Überblick darüber zu erhalten, wieXMLHttpRequest im Allgemeinen verwendet wird, sieheVerwendung von XMLHttpRequest.
In diesem Artikel
Einschränkungen
Um die synchrone Verwendung vonXMLHttpRequest zu entmutigen, ist HTML-Unterstützung im synchronen Modus nicht verfügbar. Zudem ist HTML-Unterstützung nur verfügbar, wenn dieresponseType-Eigenschaft auf"document" gesetzt wurde. Diese Einschränkung vermeidet unnötiges Zeitverschwenden beim Parsen von HTML, wenn AltcodesXMLHttpRequest im Standardmodus verwenden, umresponseText fürtext/html-Ressourcen abzurufen. Außerdem vermeidet diese Einschränkung Probleme mit Altcoden, die davon ausgehen, dassresponseXML für HTTP-Fehlerseitennull ist (die oft einentext/html-Antwortinhalt haben).
Verwendung
Das Abrufen einer HTML-Ressource als DOM mitXMLHttpRequest funktioniert genauso wie das Abrufen einer XML-Ressource als DOM mitXMLHttpRequest, jedoch können Sie den synchronen Modus nicht verwenden und Sie müssen explizit ein Dokument anfordern, indem Sie demresponseType-Eigenschaft desXMLHttpRequest-Objekts nach dem Aufruf vonopen(), aber vor dem Aufruf vonsend(), den String"document" zuweisen.
const xhr = new XMLHttpRequest();xhr.onload = () => { console.log(xhr.responseXML.title);};xhr.open("GET", "file.html");xhr.responseType = "document";xhr.send();Zeichencodierung
Wenn die Zeichencodierung im HTTP-Content-Type Header deklariert ist, wird diese Zeichencodierung verwendet. Andernfalls, wenn ein Byte-Order-Mark vorhanden ist, wird die vom Byte-Order-Mark angegebene Codierung verwendet. Andernfalls, wenn ein<meta>-Element die Zeichencodierung innerhalb der ersten 1024 Bytes der Datei deklariert, wird diese Codierung verwendet. Andernfalls wird die Datei als UTF-8 dekodiert.
Spezifikationen
| Specification |
|---|
| XMLHttpRequest> # interface-xmlhttprequest> |