Java 基于内部子属性的webDriver CSS选择器
以下是一些示例代码和我正在尝试的操作:Java 基于内部子属性的webDriver CSS选择器,java,selenium,css-selectors,Java,Selenium,Css Selectors,以下是一些示例代码和我正在尝试的操作: <dl id="parentId"> <dt> <a someattr="whatIwant"/> </dt> <dt> <a someattr="whatIwantNextTime"/> </dt> </dl 以及: "dl[id='parentId']>dt>a[someattr='wha
<dl id="parentId">
<dt>
<a someattr="whatIwant"/>
</dt>
<dt>
<a someattr="whatIwantNextTime"/>
</dt>
</dl
以及:
"dl[id='parentId']>dt>a[someattr='whatIwant']"
不幸的是,这两种方法都不起作用;我似乎正确地遵循了w3schools模板,但是当我尝试运行此模板时,找不到Iget元素异常,或者如果添加“>dt>”,则发现非法字符串异常。有人对如何做到这一点有什么见解吗
谢谢。所以我显然没有做足够的研究,因为我在发帖5分钟后才发现这一点。子代选择器“”工作正常,即:
"dl[id='parentId'] a[someattr='whatIwant']"
编辑:您正在使用直接后代选择器策略(
),这仅在元素是直接子元素时有效。如果需要的descenant,请使用(
)
另外,假设您的whatIwant
是唯一的,那么该选择器将完美工作
此外,您还可以:
dl#parentId > td:nth-child(X) > a
其中,X
是1、2、3(您想要的
的索引)
另外,如果指定CSS选择器,请确保您使用的是By.cssSelector
策略,而不是其他任何策略
dl#parentId a[someattr='whatIwant']
dl#parentId > td:nth-child(X) > a