selenium:如果相同的按钮已存在于具有相同名称,值,id的同一页面上,如何选择单击按钮?

时间:2014-02-11 06:20:29

标签: java javascript selenium

实际上此按钮在弹出窗口中打开,但存在于同一页面中 ![在此输入图像说明] [1]

我尝试使用以下代码阅读“....”

driver.findElement(By.tagName("td")).findElement(By.id("leadCaptureList_leadCaptureList_assignCampaign")).click();

但显示的错误如“无法找到元素:{”方法“:”id“,”selector“:”leadCaptureList_leadCaptureList_assignCampaign“}”

2 个答案:

答案 0 :(得分:3)

如果其他按钮不在td中,则可以使用以下代码。

driver.findElement(By.xpath("//td/input[@id='leadCaptureList_leadCaptureList_assignCampaign']")).click();

另一方面,如果两者都有相同的xpath,那么你可以使用带有xpath的索引,如下所示:

driver.findElement(By.xpath("(//td/input[@id='leadCaptureList_leadCaptureList_assignCampaign'])[1]")).click(); //you will have to give the correct index, I am giving [1] as example

如果这不起作用(我怀疑),那么我也需要第二个按钮的html,找出两个按钮之间的区别。

答案 1 :(得分:-1)

就像Husam说的那样,将父母添加到选择器中,例如div弹出。
//assume popup div id is popup
$("#popup #button").click()可能就是您想要的那个。

希望这有帮助