【发布时间】:2016-10-29 19:51:23
【问题描述】:
我有一个快速的 Java 表格问题。我有一个表,包含 4 列和 X 行。该列如下:报价编号、名称、日期和添加按钮。 我正在尝试,在表格中查找特定名称后,单击找到该名称的行上的添加按钮。
例子:
Quote# Name Date Add-Button
100001 John Doe1 01/01/1980 [Add]
100002 John Doe2 01/01/1981 [Add]
100003 John Doe3 01/01/1982 [Add]
100004 John Doe4 01/01/1983 [Add]
我编写了以下代码,以识别某个名称是否在表中:
public List<String> getInternetQuoteNames()
{
List<WebElement> webName = sh.getElements(newInternetQuotesNames);
List<String> stringName = new ArrayList<>();
for(WebElement name : webName)
stringName.add(name.getText());
return stringName;
}
现在我正在尝试编写另一种方法来单击正确的 [添加] 按钮,但我不确定如何访问正确的行,因为我不擅长使用表格。到目前为止我写的是:
public void addInternetQuoteByName(String name)
{
List<String> listOfNames = getInternetQuoteNames();
if(listOfNames.contains(name))
{
// Find row of provided name
// Click on [Add]-button on that row
}
}
表格的HTML代码如下:
<tbody>
<tr>
<td>100040365822</td>
<td>Test06232016 Test033929</td>
<td>06/23/2016</td>
<td>
<a id="assignQuoteLink_100040365822" class="add_from_pqs" href="#">Add Quote</a>
</td>
</tr>
<tr class="alt">
<td>100040365772</td>
<td>Test06232016 Test033723</td>
<td>06/23/2016</td>
<td>
<a id="assignQuoteLink_100040365772" class="add_from_pqs" href="#">Add Quote</a>
</td>
</tr>
<tr>
<tr class="alt">
<tr>
<tr class="alt">
</tbody>
非常感谢任何有关如何完成该方法并单击右侧行的 [添加] 按钮的提示!
【问题讨论】:
-
请向我们展示您正在使用的 HTML 代码...
-
@mo-h,我添加了 HTML
-
从确定要查找的名称所在的行开始,@mo-h
-
我调用 addInternetQuoteByName("John Doe");方法,我想找出名字是在哪一行找到的
-
为什么不直接
findElement( By.xpath( '//tr/td[contains(.,'John Doe2')]/../a' ).click();
标签: java selenium html-table row