Document.createProcessingInstruction()
createProcessingInstruction() generates a new processing instruction node and returns it.
The new node usually will be inserted into an XML document in order to accomplish anything with it, such as with node.insertBefore.
Syntax
piNode = document.createProcessingInstruction(target, data)
Parameters
-
piNodeis the resultingProcessingInstructionnode. -
targetis a string containing the first part of the processing instruction (i.e.,<?target … ?>) -
datais a string containing any information the processing instruction should carry, after the target. The data is up to you, but it can't contain?>, since that closes the processing instruction.
Exceptions
DOM_INVALID_CHARACTER-
Throws if either of the following are true:
- The processing instruction
targetis invalid — it should be a valid XML name that doesn't contain "xml", "XML", or any case combination of the two, other than standardized ones such as<?xml-stylesheet ?>. - The closing processing instruction sequence (
?>) is part of thedata.
- The processing instruction
Example
var doc = new DOMParser().parseFromString('<foo />', 'application/xml'); var pi = doc.createProcessingInstruction('xml-stylesheet', 'href="mycss.css" type="text/css"'); doc.insertBefore(pi, doc.firstChild); console.log(new XMLSerializer().serializeToString(doc)); // Displays: <?xml-stylesheet href="mycss.css" type="text/css"?><foo/>
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 | |
createProcessingInstruction |
1 |
12 |
1 |
9 |
≤12.1 |
1 |
1 |
18 |
4 |
≤12.1 |
1 |
1.0 |
© 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/Document/createProcessingInstruction