我有点奇怪的情况。我可能不得不写一些自定义代码,但我想我会在这里发布它以防万一有一个解决方案,或者万一其他人有类似的问题。
我需要使用绝对路径找到元素的最近祖先。
由于我工作的环境存在一些限制,我无法使用相对路径。因此,在这种情况下,无法访问祖先,前置,父级等。
实施例
<root>
<section>
<chapter>
<p id="1"/>
</chapter>
</section>
<section>
<chapter>
<p id="2"/>
</chapter>
</section>
<section>
<chapter>
<p id="3"/>
</chapter>
</section>
</root>
说我在p id =“2”。我想找到最近的部分祖先。这通常用
完成ancestor :: section甚至祖先[1] :: section
但是,我必须使用绝对路径。我没有可以从中抽取的ID或任何其他唯一标识符。
我尝试过使用像
这样的XPath// section [something here]
但我不确定我可以在谓词中添加什么来动态查找当前的section元素。
是否可以使用绝对路径找到最近的祖先?
这是XPath 1。
答案 0 :(得分:0)
你的意思是
//section[chapter/p/@id="2"]
即。查找包含章节的部分,其中包含id属性为2的p
。