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
DOM Standard
# dom-xpathresult-iteratenext

Browser compatibility

BCD tables only load in the browser