0

我遇到的问题是我不想在单击 17 或 18 时指定绝对 xpath,而是希望能够通过指定文本来单击。但是链接文本在 html 中查找<a>或属性,我有属性,我需要帮助来了解如何通过以某种方式指定文本来单击它。href<td>

这是位于表内的示例 html 代码:

<td class="centerText day" data-bind="click: function(){$root.dayClicked($parent.days()[$index()])}, text: $parent.days()[$index()].day, css: { currentMonth: !$parent.days()[$index()].currentMonth, currentDay: $parent.days()[$index()].currentDay, selectedDay: $parent.days()[$index()].selectedDay }">17</td>

<td class="centerText day" data-bind="click: function(){$root.dayClicked($parent.days()[$index()])}, text: $parent.days()[$index()].day, css: { currentMonth: !$parent.days()[$index()].currentMonth, currentDay: $parent.days()[$index()].currentDay, selectedDay: $parent.days()[$index()].selectedDay }">18</td>

这是我的硒代码:

            //click the calendar button
    driver.findElement(By.xpath("//*[@id='btnTradeDate']")).click();

             //go through the calendar table to navigate through each cell
     WebElement dateWidget = driver.findElement(By.id("transactionGridControls"));  
     List<WebElement> rows=dateWidget.findElements(By.tagName("tr"));  
      List<WebElement> columns=dateWidget.findElements(By.tagName("td"));  

      for (WebElement cell: rows){  
       //Select 17th Date   
       if (cell.getText().equals("17")){  
       cell.findElement(By.linkText("17")).click(); //need help on this 
       break;
4

0 回答 0