如何有效地使用 :not
在如下情况下选择元素:
<div class="parent">
<div class="a b c"/>
<div class="a"/>
</div>
我需要选择仅包含类“a”的 div,并排除包含类“a”、“b”和“c”的 div
。
事情是我需要的类的 div
的数量随着页面的每次加载而变化,因此必须使用查找类 'a 的 div
的逻辑' 并且没有类 'b' 和 'c'
最佳答案
这个 XPath,
//div[@class="a"]
将选择所有div
带有 class
的元素属性完全等于"a"
.它不会选择div
<div class="a b c"/>
等元素.
包含div
其实更难元素在哪里 a
是所选类(class)之一:
//div[contains(concat(' ', normalize-space(@class), ' '), ' a ')]
这里注意选择 <div class="a b c"/>
但不是 <div class="abc"/>
关于java - 基于类选择元素的 XPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47697875/