我正在使用的HTML
页面包含以下元素:
<a style="text-decoration:none; font-weight:normal;" href="javascript:void(0);" onclick="CreateNewServiceItemApproved();">
<img src="icons/ui/addnew.png">
<span style="color:#000">Add New Incident</span>
</a>
我需要点击它,但接收
org.openqa.selenium.NoSuchElementException: Unable to locate element
错误。
试图通过以下命令找到它:
driver.findElement(By.xpath("a[@onclick='CreateNewServiceItemApproved()']")).click();
driver.findElement(By.xpath("//span[contains(text(),'Add New Incident')]"));
为什么我找不到这个元素?
这里有什么问题?
答案 0 :(得分:2)
由于元素位于iframe
内,您首先需要switch
到iframe:
driver.switchTo().frame(driver.findElement(By.id("iframeId")));
然后找到<a>
元素。
可以通过id
,xpath
或常用方法找到iframe。
处理时,您可能需要切换到默认内容:
driver.switchTo().defaultContent();