如何从列表中删除第二个元素?

时间:2013-10-24 06:08:06

标签: xpath selenium

我有三个带删除选项的元素追加每个元素,我怎么能只删除第三个元素?

示例
带删除按钮的Element1 元素2带删除按钮
带有删除按钮的Element3。

当我运行脚本时,应该点击第三个元素的删除按钮&删除记录。任何人都帮助我继续这个,我是硒的新手。

我已执行以下操作: 我已经采用了删除按钮的xpath。

driver.findElements(By.xpath("//*[@title='Remove']"));

但如何点击该元素。

3 个答案:

答案 0 :(得分:2)

findElements()返回匹配元素的列表。因此,如果你想对第三个元素按钮采取行动,那么你可以这样做,

List<WebElement> deleteButtons = driver.findElements(By.xpath("//*[@title='Remove']"));
deleteButtons.get(2).click();

虽然这对您有用,但它不是最佳选择。如果开发人员更改元素的位置,则上面的代码可能会单击错误的按钮。而是相对于Element3创建xpath。这样,无论页面在页面上的位置如何,您都可以确保它始终单击正确的按钮。

答案 1 :(得分:2)

您是否希望访问List的第三个元素?如果是这样,你可以通过

来做到这一点
driver.findElements(By.xpath("//*[@title='Remove']")).get(2).click();

答案 2 :(得分:0)

您可以使用链接而不是按钮来完成此操作。每个元素都会有一个链接,当你点击删除链接时,你可以在查询字符串中传递element_id,然后通过检索该id你可以删除相应的记录。 例如:     “&GT;删除