html - 无法通过 XPath 选择 html td 链接按钮
问题描述
我正在使用的网络元素:
<td>
<div class="linkButton" onclick="window.open('../../Report/Reports/ViewReport.aspx?reportName=Revenue.Report','Report1','scrollbars=1,resizable=yes,width=800,height=600');">Revenue Report</div>
</td>
这个元素应该点击链接并打开一个新窗口
driver.FindElementByXPath("XPath").Click();
我尝试了以下 XPath:
//td[contains(text(), 'Revenue Report')]
//*[contains(@onclick, 'Revenue.Report')]
两者都因“OpenQA.Selenium.NoSuchElementException:没有这样的元素:无法定位元素”而失败
是否有其他选择此 Web 元素的选项?
解决方案
我已经在免费的在线 Xpath 测试站点中测试了这些,并且这些工作:
//div[contains(text(), 'Revenue Report')]
//div[text()= 'Revenue Report']
//td/div[text()= 'Revenue Report']
这也适用于您的建议:
//*[contains(@onclick, 'Revenue.Report')]
当我测试您的第一个建议时,我收到错误:
//td[contains(text(), 'Revenue Report')]
不允许将多个项目的序列作为 contains() ("", "") 的第一个参数
推荐阅读
- office365 - O365 Graph API Not StartsWith 过滤器
- c# - PDF 文档未从服务器端 ASP.NET 应用程序打印
- version-control - Pycharm - 搁置的更改......现在我想要它回来
- rest - REST api上的POST参数-链接还是内联?
- awk - awkArray[NR]=$0 和 awkArray[NR]=$1 如何打印最后一个数字
- javascript - 从子组件调用父函数会在 Vue.js 中引发错误
- java - 这两个代码示例中的哪一个应该更快?
- javascript - 堆叠卡片效果:拖动时将 zIndex 更改为所有相似 div 中的最高值
- asp.net-mvc - 使用 nopcommerce 4.10 ,如何从类别折扣中排除某些产品?
- firebase - 如何在 Kotlin 中使用位图