我有以下 HTML 结构
<div class="carousel">
<ul class ="carousel-view">
<li>
<figure>
<a id="one"/>
</figure>
</li>
<li>
<figure>
<a id="two"/>
</figure>
</li>
</ul>
</div>
如何使用 XPath 访问第一个
a
元素?请注意,列表中有多个 a
元素。 最佳答案
这些 XPath 表达式中的任何一个都将选择第一个 a
元素:
(//a)[1]
选择整个文档中的第一个 a
。 (/div/ul/li/figure/a)[1]
选择第一个具有显示遗产的 a
。 (//div[@class='carousel']/ul/li/figure/a)[1]
限制继承。 (//div[@class='carousel']//a)[1]
抽象了一些遗产。 根据您在实际文档中显示的 XML 的上下文以及您是否希望将
a
元素限制为仅在某些其他元素下的元素进行选择。常见的错误
注意
//a[1]
实际上选择了 多个 a
元素:<a id="one"/>
<a id="two"/>
因为
//a[1]
意味着选择作为其父元素的第一个子元素的 a
元素。必须使用括号
(//a)[1]
来选择 <a id="two"/>
单独作为文档中的第一个
a
。