2014-02-20 25 views
0

我已使用findElements來獲取所有元素的下拉列表。無法點擊下拉菜單中的鏈接。能夠獲得鏈接文本,也鏈接突出顯示,當我點擊();

List<WebElement> list = driver.findElements(By.xpath("//*@id='flyout']/div[1]/ul/li")); 

在for循環中,我得到鏈接的名稱。現在我想點擊鏈接。當我做list.get(i).click();時,相應的元素會突出顯示,但點擊不會發生。也沒有錯誤被拋出。

我在使用Firefox。

注:我已經使用findElements,因爲在HTML中的選擇值中沒有給出下拉菜單。

+0

我會想象點擊*裏面的'li'。 – Arran

回答

0

正如你所說,下拉菜單有一個「鏈接」。我認爲你迭代的元素列表只是li元素,請確保li元素中有一個href ..>元素。您需要點擊< a>而不是< li>。

我希望這會有所幫助。

另外,如果您已經知道列表中您希望單擊哪個選項,爲什麼要存儲完整列表,然後遍歷它?只需找到所需文本的鏈接並點擊它!

driver.findelement(by.linktext("link text")).click() 
0

我會假設你的xpath並不真正返回clickable元素。

如果下拉列表項是鏈接,那麼可能需要提供導致超鏈接的定位器。