【问题标题】:How to write xpath for tag named onclick within selenium如何在 selenium 中为名为 onclick 的标签编写 xpath
【发布时间】:2019-09-10 12:11:19
【问题描述】:

我正在尝试单击应用程序菜单上可单击的选项卡,但是一旦我尝试通过 xpath 捕获该 Web 元素,它就无法正常工作并出现“无法找到元素”错误。

HTML 表达式如下:

td width="132" height="37" align=center class="passive" id="2" style="CURSOR: hand" onclick="submit2(2)" rowSpan="1" colSpan="1" 

xpath 不适用于此点击操作。

driver.findElement(By.xpath("//td[@onclick='submit2(2)']")).click();

【问题讨论】:

  • 使用实际的 HTML 和错误堆栈跟踪来更新问题,而不是提供手工制作的 HTML
  • 问题很清楚
  • 你有一个ID,为什么不用呢?你试过等待吗?您确定该元素不在IFRAME 内吗?更新您的问题,尝试解决问题并发布完整的错误消息。

标签: java html selenium xpath onclick


【解决方案1】:

没有看到完整的table 并且假设最初的html 可能有点错误。用下面的html;

  <width="132" height="37" align=center class="passive" id="2" style="CURSOR: hand" onclick="submit2(2)" rowSpan="1" colSpan="1">

我可以使用这个 xpath 来定位元素,并且只要它足够独特,不会误认为它是具有相同 onclick 值的另一个元素,这可以解决问题。

//*[@onclick='submit2(2)']

但是,我无法使用以下有效的 html 创建虚拟表。随意使用周围的 html 编辑您的原始帖子,我会酌情重新调整:)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-13
    • 1970-01-01
    • 2016-06-30
    • 1970-01-01
    相关资源
    最近更新 更多