【问题标题】:selenium - search text in specific row of a tableselenium - 在表格的特定行中搜索文本
【发布时间】:2013-12-11 00:44:03
【问题描述】:

我有一张随时变化的桌子。 我需要找到包含单词“All”的行,然后单击放置在该特定行的单元格中的链接。 例如:

<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>

我想找到包含单词“all”的行,然后只点击同一行中的单词“disable”。

谢谢!

【问题讨论】:

    标签: java selenium html-table


    【解决方案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;
                    }
                }
            }
    

    【讨论】:

    • 请让我知道这是否有效。如果有效,请选择正确的答案。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2017-08-15
    • 1970-01-01
    • 2013-03-18
    • 1970-01-01
    • 1970-01-01
    • 2012-12-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多