document.evaluateの結果の内容を取得

document.evaluateの結果から内容を取得する場合、結果の種類によって取得方法が異なります。

種類 取得方法
ノード(単一) XPathResult.singleNodeValueプロパティ
次のノード(複数のノードから) XPathResult.iterateNextメソッド
文字列 XPathResult.stringValueプロパティ
数値 XPathResult.numberValueプロパティ
真偽 XPathResult.booleanValueプロパティ
スナップショット snapshotItemメソッド

サンプルコード

JavaScript

// 見つかった最初の要素
var resultFirst = document.evaluate('//h2', document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null);

console.log(resultFirst.singleNodeValue.textContent);

// 開始する要素を変更
var resultAny = document.evaluate('./h1', document.getElementsByTagName('header')[1], null, XPathResult.ANY_TYPE, null);

console.log(resultAny.iterateNext().textContent);

// 数値
var resultNumber = document.evaluate('count(//header)', document, null, XPathResult.NUMBER_TYPE, null);

console.log(resultNumber.numberValue);

document.evaluateについては、XPathからノードを取得ページをご覧ください。

JavaScript逆引きリファレンス一覧へ戻る