Selenium webdriver 如何使用SeleniumWeb驱动程序单击在弹出窗口后出现的网格中的链接?

Selenium webdriver 如何使用SeleniumWeb驱动程序单击在弹出窗口后出现的网格中的链接?,selenium-webdriver,Selenium Webdriver,我需要关于Selenium Web驱动程序的JavaScript帮助 我想单击网格中的链接,该网格将在单击按钮时打开。该链接位于网格中。 所以我的问题是:如何使用web驱动程序中的任何语法或命令来单击该链接? 该链接只提供了xpath,但问题仍然没有得到解决。 我使用的命令是 driver.findElement(By.xpath("//*@id='ctl00$PageBody$ucAgList$grd']/tbody/tr/td[4]/span")).click(); 我还需要用鼠标点

我需要关于Selenium Web驱动程序的JavaScript帮助

我想单击网格中的链接,该网格将在单击按钮时打开。该链接位于网格中。 所以我的问题是:如何使用web驱动程序中的任何语法或命令来单击该链接? 该链接只提供了xpath,但问题仍然没有得到解决。 我使用的命令是

driver.findElement(By.xpath("//*@id='ctl00$PageBody$ucAgList$grd']/tbody/tr/td[4]/span")).click();   
我还需要用鼠标点击一个按钮 href=javascript:WebForm_DoPostBackWithOptions(新的WebForm_PostBackOptions(“ctl00$PageBody$Button1”,“true”,“true”,“false”,“true))。 但是通过使用id它不起作用,请告诉我如何使用此href

完整的html代码是


但是它不起作用。

首先:您正在尝试具有ID的xpath,因此请尝试使用ID单击按钮

driver.findElement(By.id("ctl00$PageBody$ucAgList$grd"))

但是,如果您没有找到解决方案,请发布Html的完整详细信息。

尝试显式等待

WebDriverWait webwait = new WebDriverWait(driver, 10);
webwait.until(ExpectedConditions.elementToBeClickable(By.xpath("//*@id='ctl00$PageBody$ucAgList$grd']/tbody/tr/td[4]/span"))).click();

它最多应该等待10秒,然后单击该字段。

假设您所做的其他操作都是正确的,您在上面提供的xpath中有一个输入错误,您缺少第一部分中的开头方括号,它应该是:

driver.findelelement(By.xpath(“/*[@id='ctl00$PageBody$ucAgList$grd']/tbody/tr/td[4]/span”)。单击()


那么它怎么会不起作用呢?没有太多的信息,但试着通过链接文本定位?它不工作,因为链接位于网格中。实际上,给定的id是“page_button1”,并且它没有被单击,因为按钮存在于网格中。我仍然没有得到解决方案。根据id,它不工作。