The XMLSerializer
interface provides the serializeToString()
method to construct an XML string representing a DOM tree.
The XMLSerializer
interface provides the serializeToString()
method to construct an XML string representing a DOM tree.
XMLSerializer()
Creates a new XMLSerializer
object.
serializeToString()
Returns the serialized subtree of a string.
This example just serializes an entire document into a string containing XML.
js
const s = new XMLSerializer(); const str = s.serializeToString(document); saveXML(str);
This involves creating a new XMLSerializer
object, then passing the Document
to be serialized into serializeToString()
, which returns the XML equivalent of the document. saveXML()
represents a function that would then save the serialized string.
This example uses the Element.insertAdjacentHTML()
method to insert a new DOM Node
into the body of the Document
, based on XML created by serializing an Element
object.
Note: In the real world, you should usually instead call importNode()
method to import the new node into the DOM, then call one of the following methods to add the node to the DOM tree:
Element.append()
/Element.prepend()
and Document.append()
/Document.prepend()
methods.Element.replaceWith
method (to replace an existing node with the new one)Element.insertAdjacentElement()
method.Because insertAdjacentHTML()
accepts a string and not a Node
as its second parameter, XMLSerializer
is used to first convert the node into a string.
js
const inp = document.createElement("input"); const XMLS = new XMLSerializer(); const inp_xmls = XMLS.serializeToString(inp); // First convert DOM node into a string // Insert the newly created node into the document's body document.body.insertAdjacentHTML("afterbegin", inp_xmls);
The code creates a new <input>
element by calling Document.createElement()
, then serializes it into XML using serializeToString()
.
Once that's done, insertAdjacentHTML()
is used to insert the <input>
element into the DOM.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
XMLSerializer |
1 | 12 | 1 | 9 | ≤12.1 | 3 | 4.4 | 18 | 4 | ≤12.1 | 1 | 1.0 |
XMLSerializer |
1 | 12 | 1 | 9 | ≤12.1 | 3 | 4.4 | 18 | 4 | ≤12.1 | 1 | 1.0 |
serializeToString |
1 | 12 | 1 | 9 | ≤12.1 | 3 | 4.4 | 18 | 4 | ≤12.1 | 1 | 1.0 |
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/XMLSerializer