1

XPathResult.FIRST_ORDERED_NODE_TYPEXPath エバリュエーターに代わりに (8) またはANY_UNORDERED_NODE_TYPE(9) が必要であることを伝えた場合body、期待どおりに要素を取得しますが、他のすべての結果タイプではThe expression cannot be converted to return the specified type.例外が発生します (Firefox では、WebKit と Opera はあまり寛大ではないように見えます。代わりに名前を付けTYPE_ERR: DOM XPath Exception 52ます。

何が起こっている?"."そして、わかりやすくするために質問を言い換えると、コンテキストノードを選択するのは、単一ノードの結果として明確に推測されるのではなく、タイプエラーである理由です"self::node()"。人間?

(参考までに.singleNodeValue、エラーをトリガーするのは特にアクセスではありません。すべての XPathResult のプロパティは、この同じエラーを示しています。)

4

1 に答える 1

1

まあ、仕様があります http://www.w3.org/TR/DOM-Level-3-XPath/xpath.html#XPathResult-singleNodeValueこれsingleNodeValueは、resultType が ANY_UNORDERED_NODE_TYPE またはFIRST_ORDERED_NODE_TYPE.". 実装はその仕様に従います。

于 2012-11-24T10:45:38.823 に答える