如何检查链接是否可以在列中单击

时间:2016-02-25 16:58:41

标签: java selenium

我在一列中有多个链接,只有一个是随机启用的,而其他一些是禁用的,我需要检查哪个链接已启用然后单击它。

我正在使用正则表达式来查找链接,但是我如何进入循环并检查Kindly help

以下是代码

int i = 0;
do {                         
  xpath =".//*[@id='ctl00_ctl00_MainContent_ChildContent1_dgDataList_ctl0"+i+"_btnEdit']";
  a1 = driver.findElement(By.xpath(xpath)).isEnabled();
  System.out.println(a1+"" + i);
  i = i+1;
} while (a1 = true);


driver.findElement(By.xpath(xpath)).Click();

1 个答案:

答案 0 :(得分:0)

您没有提供足够的信息来提供明确的答案。所以以下是我最好的猜测。

您可以使用ExpectedConditions.elementToBeClickable()方法作弊,例如:

// assume driver is already initialized to some WebDriver
WebDriverWait wait = new WebDriverWait(driver, 20);
WebElement clickableBtn = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//*[contains(@id, '_btnEdit']")));
clickableBtn.click();