有沒有辦法做類似的事情:webElement.findElements(By.cssSelector("> li");我正在嘗試獲取 WebElement 對象的直接子對象。我知道 css 選擇器“父>子”并且它按預期工作,但我的情況不同。例如:<ul class="x"> <li> <ul> <li> </li> </ul> </li> <li> </li></ul>List<WebElement> webElements = driver.findElements(By.cssSelector("ul.x > li"));僅返回 ul 標記的直接子子級。列表的大小是 2。但我有下一個用例:WebElement webElement = driver.findElement(By.cssSelector("ul.x"));webElement.findElements(By.cssSelector("li");這里的問題是,此代碼返回所有“li”Web 元素,而不僅僅是直接子元素。這次List的大小是3。我試過這個:webElement.findElements(By.cssSelector("> li");但這會引發錯誤org.openqa.selenium.InvalidSelectorException:無效選擇器:指定了無效或非法選擇器
1 回答

撒科打諢
TA貢獻1934條經驗 獲得超2個贊
您可以使用 xpath:
WebElement webElement = driver.findElement(By.cssSelector("ul.x")); webElement.findElements(By.xpath("./li");
添加回答
舉報
0/150
提交
取消