【发布时间】:2017-07-14 16:58:44
【问题描述】:
我有一个由 javascript 填充的 JSP 页面,导致典型的表格元素级联 <table><tbody><tr><td>。填充后,我看到了我想要使用的文本
getTable("tableLister.listTable.1.1")
该表还有一个class=clsDisplayTableBody。
我想为感兴趣的行单击第 0 列中的复选框。但是,所有这些测试都失败了
isElementPresent("//*[text()="+cellContents+"]/../td[0]"))
isElementPresent("//table[@class='clsDisplayTableBody']//tr[1]/td[0]"))
isElementPresent("css='clsDisplayTableBody' tr:nth-child(1) td:nth-child(0)"))
isElementPresent("//xpath=id('tableLister.listTable')/descendant::tr[1]/descendant::td[0]"))
isElementPresent("//table[@id='tableLister.listTable']//tbody/tr[1]/td[0]"))
isElementPresent("//table[@id='tableLister.listTable']//tr[1]/td[0]"))
还有什么我可以尝试的吗?
【问题讨论】:
-
你还没有提供任何 XML 文档,你认为任何人都可以理解这些表达式打算选择什么?
-
好问题,+1。有关所有 XPath 表达式的问题之一的解释,请参阅我的答案。
-
我不同意。这个问题没有很好的定义。投反对票是我的。
标签: xpath html-table cell selenium-rc