我正在尝试点击跨度n6中的“新交易”链接,该链接是跨度n2的子元素。我能够达到n2,但它不能识别'n6'。 请帮助我是Selenium WebDriver的新手
这里我发布了html和我的代码。
交易
新 贸易
贸易 资源管理器
我想点击新交易
我的代码直到'n2':
driver.switchTo().frame(driver.findElement(By.name("treeFrame")));
WebElement allFormChildElements = driver.findElement(By.name("the_form"));
allFormChildElements.findElement(By.linkText("Trading")).click();
WebElement modalDialog = allFormChildElements.findElement(By.className("border"));
WebElement newmodalDialog = modalDialog.findElement(By.className("formScrollableMenuContent"));
System.out.println(newmodalDialog.findElements(By.tagName("a")).size()); // ans 5
WebElement newDialog= newmodalDialog.findElement(By.id("n2"));
System.out.println(newDialog.findElements(By.id("n3")).size()); // ans 0
答案 0 :(得分:1)
使用图片我无法测试但是,如果您能够到达元素<span id="n2">
,那么您可以使用以下xpath来单击带有“New Trade”文本的元素:< / p>
newDialog.findElement(By.xpath(".//span[@id='n6']/a[@name='A6' and text()='New Trade']")).click();
修改强>
如果id值发生变化,请尝试以这种方式:
newDialog.findElement(By.xpath(".//span/a[@name='A6' and text()='New Trade']")).click();
答案 1 :(得分:0)
请你试试下面的xpath
//a[contains(text(),"New Trade")]