[英]Locating a text field element using xpath
所以我想使用 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 的信息。
謝謝 !
我猜最后一個@type 有一個錯字——它應該是@type= 並且在相同的@type 條件下也有一個缺失的)
。 以下是我測試過的更正代碼。
element = driver.findElement(By.xpath("//input[((@id=\"login\") or (@name = \"login\")) and (@type=\"text\")]"));
下面為我工作:
element = driver.findElement(By.xpath("//input[(@id='login' or @name='login') and @type='text']")
請試試這個:
element = driver.findElement(By.xpath("//input[(contains(@id,'login') or contains(@name,'login')) and contains(@type,'text')]";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.