【发布时间】:2014-05-23 23:27:37
【问题描述】:
在以下所有情况下,我都无法识别元素。请帮我找出代码中的问题。
HTML 代码:
<div id="DetailedNavigationTree" class="SItree">
<div style="margin-left: 0px; margin-right: 10px; white-space: nowrap;">
<img src="/irj/portalapps/com.sap.portal.design.portaldesigndatathemes /portal/Test_theme/nav/treeview/ico12_treeleaf.gif?7.0.24.1.6"/>
<img id="DetailedNavigationTree/navurl://cd82866421cb92cf96c103eb19061574" src="/irj/portalapps/com.sap.portal.design.portaldesigndata/themes/portal/ford_theme/common/1x1.gif?7.0.24.1.6"/>
<a class="SItreeText" href="#" style="word-wrap: normal; white-space: nowrap;">Test CRM Centre</a>
</div>
我想点击标签a - Test CRM Centre中的元素
我试过的代码:
driver.findElement(By.cssSelector(".SItreeText")).click();
driver.findElement(By.linkText("Test CRM Centre")).click();
driver.findElement(By.xpath("//html/body/table/tbody/tr[1]/td/div[1]/table/tbody/tr/td[1]/div/div/table/tbody/tr/td/span/table/tbody[2]/tr[2]/td[3]/div/div/div[2]/div/a")).click();
driver.findElement(By.cssSelector("#DetailedNavigationTree")).click();
driver.findElement(By.xpath("//a[contains(@href, '#')]")).click();
driver.findElement(By.xpath("//a[@id = 'navNodeAnchor_2_0']")).click();
driver.findElement(By.xpath("//a[contains(@href, '#')]")).click();
driver.switchTo().frame(driver.findElement(By.xpath("//html/body/table/tbody/tr[1]/td/div[1]/table/tbody/tr/td[1]/div/div/table/tbody/tr/td/span/table/tbody[2]/tr[2]/td[3]/div/div/div[2]/div/a")));
【问题讨论】:
-
您将需要发布一个更“简单的 HTML”结构......但所有级别。在这种情况下,您正在寻找
body->table->table row 1->table date-> div 1等等,您是否使用表格第 1 行中的表格数据中的表格,表格数据中的表格和嵌套 div 中第三个 TR 位置的 A ? -
您好 Kenneth Clark,请告诉我如何发布正确的 HTML 结构。抱歉,我是第一次发布问题。
-
嗨,我已经给出了正确的结构 HTML。请帮我解决这个问题
-
您将需要发布 .. 只是页面的 HTML 结构和 div,因此请保持其内容最少
<HTML><BODY><TABLE><TR><TD><TABLE...></TD></TR></TABLE></BODY>这将有助于一堆 -
你的“HTML”中有
xmlns(命名空间声明)吗?
标签: java html selenium xpath webdriver