XMLSerializer.serializeToString()

The XMLSerializer method serializeToString() constructs a string representing the specified DOM tree in XML form.

Syntax

xmlString = anXMLSerializer.serializeToString(rootNode);

Parameters

rootNode

The Node to use as the root of the DOM tree or subtree for which to construct an XML representation.

Return value

A DOMString containing the XML representation of the specified DOM tree.

Exceptions

TypeError

The specified rootNode is not a compatible node type. The root node must be either Node or Attr.

InvalidStateError

The tree could not be successfully serialized, probably due to issues with the content's compatibility with XML serialization.

SyntaxError

A serialization of HTML was requested but could not succeed due to the content not being well-formed.

Usage notes

Compatible node types

The specified root node—and all of its descendants—must be compatible with the XML serialization algorithm. The root node itself must be either a Node or Attr object.

The following types are also permitted as descendants of the root node, in addition to Node and Attr:

If any other type is encountered, a TypeError exception is thrown.

Notes on the resulting XML

There are some things worth noting about the XML output by serializeToString():

  • For XML serializations, Element and Attr nodes are always serialized with their namespaceURI intact. This may mean that a previously-specified prefix or default namespace may be dropped or altered.
  • The resulting XML is compatible with the HTML parser.
  • Elements in the HTML namespace that have no child nodes (thereby representing empty tags) are serialized with both begin and end tags ("<someelement></someelement>") instead of using the empty-element tag ("<someelement/>").

Specifications

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
serializeToString
1
12
1
9
≤12.1
3
1
18
4
≤12.1
1
1.0

See also

© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/XMLSerializer/serializeToString