使用xpath定位文本字段元素

问题描述 投票:0回答:2

所以我想使用xpath来定位文本字段元素,我的代码以前看起来像这样,并且有效:

element = driver.findElement(By.xpath("//input[(@id="\login"\) or (@name = "\login"\)]"));

但是我想确保驱动程序选择了一个文本字段,所以我将其更改为:

element = driver.findElement(By.xpath("//input[((@id="\login"\) or (@name = "\login"\)) and (@type="\text"\]"));

它没有用,我搜索了一个解决方案,但是我发现在xpath上同时使用OR和AND的信息很少或没有。

谢谢!

java selenium selenium-webdriver
2个回答
0
投票

我猜最后一个@type上有一个错别字-它应该是@ type =,并且在相同的@type条件下也缺少)。下面是我测试过的更正的代码。

element = driver.findElement(By.xpath("//input[((@id=\"login\") or (@name = \"login\")) and (@type=\"text\")]"));

0
投票

以下为我工作:

element = driver.findElement(By.xpath("//input[(@id='login' or @name='login') and @type='text']")
最新问题
© www.soinside.com 2019 - 2024. All rights reserved.