The iterateNext() method of the XPathResult interface iterates over a node set result and returns the next node from it or null if there are no more nodes.
Syntax
var node = result.iterateNext();
Return value
The next Node within the node set of the XPathResult.
Exceptions
TYPE_ERR
In case XPathResult.resultType is not UNORDERED_NODE_ITERATOR_TYPE or ORDERED_NODE_ITERATOR_TYPE, an XPathException of type TYPE_ERR is thrown.
INVALID_STATE_ERR
If the document is mutated since the result was returned, an XPathException of type INVALID_STATE_ERR is thrown.
Example
The following example shows the use of the iterateNext() method.
HTML
<div>XPath example</div> <div>Tag names of the matched nodes: <output></output></div>
JavaScript
var xpath = "//div";
var result = document.evaluate(xpath, document, null, XPathResult.ANY_TYPE, null);
var node = null;
var tagNames = [];
while(node = result.iterateNext()) {
tagNames.push(node.localName);
}
document.querySelector("output").textContent = tagNames.join(", ");
Result
Specifications
| Specification | Status | Comment |
|---|---|---|
| Document Object Model (DOM) Level 3 XPath Specification The definition of 'XPathResult.iterateNext()' in that specification. |
Recommendation | Initial definition |
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.
No compatibility data found. Please contribute data for "api.XPathResult.iterateNext()" (depth: 1) to the MDN compatibility data repository.
