我希望获得具有某些属性的WebElement
最接近的祖先。
例如:
<div>
<i value1= "hello">
<a value1 = "bye">
<div id="2"> Hello </div></a></i></div>
我在WebElment
中有一个显示Jave
div (id="2")
如何获得具有value1
属性的最近亲?
在这种情况下,我会使用a
获取元素value1="bye"
。
我尝试下一个:divElement.findElement(By.xpath("/ancestor-or-self::*[@value1]"));
但这不起作用。
答案 0 :(得分:3)
尝试相对XPath表达式,即从./
而不是/
开始:
divElement.findElement(By.xpath("./ancestor-or-self::*[@value1][1]"));
答案 1 :(得分:-1)
您是否看过这个答案here。我相信你需要的东西
WebElement element = driver.findElement(By.xpath("//div[@id='2']/preceding::*[@value1][1]"));
那就是说,我不确定你为什么需要这样做。你能详细说明一下吗?