如何选择特定行并单击该行的删除

问题描述:

我有一个表有一些列,最后一列有一个图像进行删除,它首先显示删除确认。如何选择特定行并单击该行的删除

我知道如何像这样

IAlert simpleAlert = driver.SwitchTo().Alert(); 
    simpleAlert.Accept(); 

但是我不知道如何通过点击删除图像

在这里删除任何表中的可用行的JavaScript响应提示是删除图像标记样子

<a id="delete34" href="delxxx?id=34" onclick="return prompt('del34')"><img src="img/delete_24.png" alt="delete" title="delete" width="24" height="24"/></a> 

最后一个数字“34”是该行的ID和动态生成,所以我如何针对任何可用行,然后单击删除图像?

+2

要清楚,你需要一种通用的方法来点击表格中一行上的删除按钮。那是对的吗?如果是这样,你如何计划选择行? – Haendler

+0

@Headler是的我的问题我无法找到目标任何行来测试删除。页面中没有ID隐藏标签,我无法弄清楚 – Wel

+0

您可以给的url吗? – Kanak

在你的代码

IList<IWebElement> rowDeleteButtons = driver.findElements(By.XPath("//a[contains(@id,'delete')]"); 

rowDeleteButtons[0].Click(); 

应该做的伎俩。由于行ID并不重要,因此如果至少有一行,它将始终有效。

+0

我爱你... :) – Wel

+1

如果你总是选择第一个,只需使用'.FindElement()'并点击它即可。 'driver.findElement(By.XPath(“// a [contains(@ id,'delete')]”)。click();' – JeffC

+0

这不是一个真正的好方法,虽然它可能工作,findElement应该用于单一,独特的元素和findElements可以用于多个元素,这样你的代码就可以自我解释并反映它实际上在做什么 –