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

Java 如何检查链接在列中是否可单击,java,selenium,Java,Selenium,我在一列中有多个链接,只有一个是随机启用的,其他的是禁用的,我需要检查哪个链接是启用的,然后单击它 我正在使用正则表达式来查找链接,但是如何才能放入循环并检查帮助 下面是代码 int i = 0; do { xpath =".//*[@id='ctl00_ctl00_MainContent_ChildContent1_dgDataList_ctl0"+i+"_btnEdit']"; a1 = driver.findElement(By.x

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

我正在使用正则表达式来查找链接,但是如何才能放入循环并检查帮助

下面是代码

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();

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

您可以使用以下方法进行欺骗:

// 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();

你能分享一些HTML代码吗??正则表达式在哪里?如果您看到xpath,我在值发生变化的地方添加了“i”。我在一列中有多个链接,只有一个是随机启用的,其他的是禁用的,我需要检查哪个链接已启用,然后单击它。我正在使用正则表达式来查找链接,但是我如何才能放入循环并单击下面的帮助是codeint I=0;do{xpath=“../*[@id='ctl00\u ctl00\u MainContent\u ChildContent1\u dgDataList\u ctl0”+i+“\u btnEdit']”;a1=driver.findElement(By.xpath(xpath)).isEnabled();System.out.println(a1+”+i);i=i+1;}while(a1=true);findElement(By.xpath(xpath)).Click()@如果你有一个新问题,请开始一个新问题。如果要向当前问题添加信息,请编辑当前问题。在注释中提供代码使其完全难以辨认。