我有以下HTML,请帮我编写一个java代码来点击“患者”按钮。
<span id="addPat">
<span style="cursor: hand;" onclick="javascript:AddPatient();">
<img width="17" height="17" class="btnRowIcon" src="../Images/V10Icons/Add.gif"/>
答案 0 :(得分:0)
你必须以某种方式识别跨度;看起来像这样:
WebElement patientButton = driver.findElement(By.xpath("//span/span[child::img[@class='btnRowIcon']]"));
根据您网站的结构,这可能有效,也可能无效。获得元素后,您可以使用patientButton.click()
点击它。
答案 1 :(得分:0)
更好的替代blalasaadri的答案,就是使用CSS选择器。 They are faster, cleaner,只是......更好。
WebElement image = driver.findElement(By.cssSelector("span#addPat img.btnRowIcon"));
// now you can perform what you want to on the image. image.getAttribute("src")...
答案 2 :(得分:0)
我同意sircapsalot,你也可以使用implicit or explicit waits等待元素的存在 这是示例,使用显式等待:
WebDriverWait image = new WebDriverWait(driver,60);
image.until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("span#id img.btnRowIcon")));
image.click();
以上代码将等待60秒以使图像可见,