The XMLSerializer method serializeToString() constructs a string representing the specified DOM tree in XML form.
Syntax
xmlString = anXMLSerializer.serializeToString(rootNode);
Parameters
rootNode- The
Nodeto 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
rootNodeis not a compatible node type. The root node must be eitherNodeorAttr. 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,
ElementandAttrnodes are always serialized with theirnamespaceURIintact. This may mean that a previously-specifiedprefixor 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
| Specification | Status | Comment |
|---|---|---|
| DOM Parsing and Serialization The definition of 'serializeToString()' in that specification. |
Working Draft |
Browser compatibility
See also
- Parsing and serializing XML
- Serializing to HTML:
Element.innerHTMLandElement.outerHTML - Parsing HTML or XML to create a DOM tree:
DOMParser
