createCDATASection()
creates a new CDATA section node, and returns it.
Syntax
var CDATASectionNode = document.createCDATASection(data);
- CDATASectionNode is a CDATA Section node.
- data is a string containing the data to be added to the CDATA Section.
Example
var docu = new DOMParser().parseFromString('<xml></xml>', 'application/xml') var cdata = docu.createCDATASection('Some <CDATA> data & then some'); docu.getElementsByTagName('xml')[0].appendChild(cdata); alert(new XMLSerializer().serializeToString(docu)); // Displays: <xml><![CDATA[Some <CDATA> data & then some]]></xml>
Notes
- This will only work with XML, not HTML documents (as HTML documents do not support CDATA sections); attempting it on an HTML document will throw
NOT_SUPPORTED_ERR
. - Will throw a
NS_ERROR_DOM_INVALID_CHARACTER_ERR
exception if one tries to submit the closing CDATA sequence ("]]>
") as part of the data, so unescaped user-provided data cannot be safely used without with this method getting this exception (createTextNode()
can often be used in its place).
Specifications
Specification | Status | Comment |
---|---|---|
DOM The definition of 'document.createCDATASection' in that specification. |
Living Standard |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
createCDATASection | Chrome Full support 1 | Edge Full support 12 | Firefox Full support Yes | IE ? | Opera Full support Yes | Safari Full support Yes | WebView Android Full support Yes | Chrome Android Full support Yes | Firefox Android Full support Yes | Opera Android Full support Yes | Safari iOS Full support Yes | Samsung Internet Android Full support Yes |
Legend
- Full support
- Full support
- Compatibility unknown
- Compatibility unknown