XPathResult.iterateNext()

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

No compatibility data found. Please contribute data for "api.XPathResult.iterateNext()" (depth: 1) to the MDN compatibility data repository.