2013-12-09 3 views
0

У меня есть таблица, которая постоянно меняется. Мне нужно найти строку, содержащую слово «Все», а затем щелкнуть ссылку, помещенную в ячейку этой конкретной строки. , например:selenium - поиск текста в определенной строке таблицы

<table> 
<thead> 
    <tr> 
    <td class="message_Content"> all cars </td> 
    <td><a class="Toggle" href="javascript:;">disable</a></td> 
    </tr> 

    <tr> 
    <td class="message_Content"> renault </td> 
    <td><a class="Toggle" href="javascript:;">disable</a></td> 
    </tr> 
</thead> 
<tbody> 

Я хочу, чтобы найти строку, содержащую слово «все», а затем нажмите на слово «отключить» только в одной строке.

спасибо!

ответ

1

Что-то вроде ниже должно работать. Я не тестировал код, но то, что вы хотите достичь, возможно. Попробуйте приведенный ниже код, возможно, вам понадобятся некоторые веточки

List<WebElement> elements = driver.findElements(By.xpath("//table/thead/tr")); 
     for (Iterator<WebElement> iterator = elements.iterator(); iterator.hasNext();) { 
      WebElement webElement = iterator.next(); 
      List<WebElement> findElement = webElement.findElements(By.xpath("./td")); 
      if(findElement.size() > 0){ 
       if(findElement.get(0).getText() != null && findElement.get(0).getText().indexOf("all") != -1) { 
        List<WebElement> aElement = webElement.findElements(By.xpath("./td/a")); 
        aElement.get(0).click(); 
            break; 
       } 
      } 
     } 
+0

Пожалуйста, дайте мне знать, если это сработало. Если это работает, выберите ответ правильно. Спасибо. –

Смежные вопросы