gpt4 book ai didi

java - 选择包含特定 linkText 的元素之前的元素

转载 作者:搜寻专家 更新时间:2023-11-01 03:01:13 25 4
gpt4 key购买 nike

我正在尝试使用 selenium 单击 <td>出现在 <td> 之前的元素链接文本为“Main”的元素。我正在尝试单击此图像中突出显示的元素:

screen

<td>我要点击的元素和它后面的元素在同一个<tr>内元素,在图像中显示为具有 id=5 .

此元素对应于下面突出显示的整个 行。请注意它的 linkText 和它下面的元素一样是“绿色”的。因此我不能为 <td> 使用 xpath/css 选择器我要点击的元素。

enter image description here

我正在尝试单击突出显示的“绿色”。这就是为什么我试图点击 <td>元素之前以“Main”作为其链接文本的元素。

我有这段代码,但我不知道如何获取这段代码匹配的元素之前的元素:WebElement templateFound = driver.findElement(By.linkText("Main"));

有帮助,谢谢

最佳答案

您可以使用 following-sibling axis :

//td[following-sibling::td[1]/a = 'Main']

基本上,这将为您提供一个 td 元素,该元素在第一个 td 同级元素中具有文本“Main”的链接。


或者,一旦您通过链接文本找到链接,您可以使用 preceding ,这将为您提供除父 td 元素之外的第一个 td 元素:

The preceding axis indicates all the nodes that precede the context node in the document except any ancestor, attribute and namespace nodes.

WebElement templateFound = driver.findElement(By.linkText("Main"));
templateFound.findElement(By.xpath("preceding::td"));

关于java - 选择包含特定 linkText 的元素之前的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33863531/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com