<a onclick="requestReportGeneration('857f23e1baa767622a91f970963d8918', 'reportDiv31','CSV')" href="javascript:void[0];">CSV</a>
<a onclick="requestReportGeneration('64107e36323e5877c986edc98a17b6e8', 'reportDiv32','CSV')" href="javascript:void[0];">CSV</a>
<a onclick="requestReportGeneration('2cad4d4e5c8855c47a88b6ddf8345735', 'reportDiv33','CSV')" href="javascript:void[0];">CSV</a>
我在一个页面上有这三个链接,我想依次单击每个链接。我正在将页面上的所有链接读入 WebElements 列表,然后如果 href 包含 javascript:void[0] 则依次浏览每个链接,然后尝试单击它:
for (int i = 0; i < allLinks.size(); i++) {
String reportLink = allLinks.get(i).getAttribute("href");
if (reportLink.contains("javascript:void[0];"))
{
allLinks.get(i).click();
/// Do some more stuff
}
问题是我不断收到错误消息,说该元素不可见。我也试过只加载页面而不是让所有链接都在做
driver.findElement(By.xpath("//a[contains(@href,\"javascript:void[0]\")]")).click();
但这也只会给出元素不可见的错误。谁能告诉我为什么这不起作用?