Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如果表中有预期值,则我希望使用Selenium WebDriver选择行的第0个索引中存在的超链接_Java_Selenium Webdriver - Fatal编程技术网

Java 如果表中有预期值,则我希望使用Selenium WebDriver选择行的第0个索引中存在的超链接

Java 如果表中有预期值,则我希望使用Selenium WebDriver选择行的第0个索引中存在的超链接,java,selenium-webdriver,Java,Selenium Webdriver,我的网页中有一个表格,如所附图表所示。如果表行的第0个索引中存在我的期望值,则我希望选择该行中存在的超链接 如何使用Java在SeleniumWebDriver中实现这一点 我们可以使用XPATH来实现这一点。我们需要定位表中的“value3”单元格(thuw finding row),然后保持它有引用,我们需要导航到第一列 步骤1:定位值行 ".//td[contains(text(),"'+value+'")]" //Where Value is the "value3" that you

我的网页中有一个表格,如所附图表所示。如果表行的第0个索引中存在我的期望值,则我希望选择该行中存在的超链接


如何使用Java在SeleniumWebDriver中实现这一点

我们可以使用XPATH来实现这一点。我们需要定位表中的“value3”单元格(thuw finding row),然后保持它有引用,我们需要导航到第一列

步骤1:定位值行

".//td[contains(text(),"'+value+'")]" //Where Value is the "value3" that you know,
步骤2:现在保留步骤1作为参考,使用“preceding”导航回第一列

最终的代码应该与此类似

driver.findElement(By.xpath(".//td[contains(text(),"'+value+'")]/preceding-sibling::td[3]")).click();

您可以尝试使用以下代码进行相同操作:

List <WebElement> rowElements = driver.findElements(By.xpath("\\table\\tr"));

for(int i=1; i< rowElements.size(); i++){

     List <WebElement> colElements = rowElements.get(i).findElements(By.tagName("td"));

  for(int j=1; j<colElements.getSize(); j++){ 

   if(colElements.get(j).getText().equals("yourValue")){ //yourValue is value to be matched in column 3

      colElements.get(0).click();

    //clicking the hyperlink

   }

 }

}
List rowElements=driver.findElements(By.xpath(“\\table\\tr”);
对于(int i=1;iList <WebElement> rowElements = driver.findElements(By.xpath("\\table\\tr"));

for(int i=1; i< rowElements.size(); i++){

     List <WebElement> colElements = rowElements.get(i).findElements(By.tagName("td"));

  for(int j=1; j<colElements.getSize(); j++){ 

   if(colElements.get(j).getText().equals("yourValue")){ //yourValue is value to be matched in column 3

      colElements.get(0).click();

    //clicking the hyperlink

   }

 }

}