【问题标题】:How to Click a SPAN with Dynamic Id如何单击具有动态 ID 的 SPAN
【发布时间】:2017-09-18 21:02:49
【问题描述】:

我正在尝试单击 SPAN 标记中的某个链接,我尝试使用 XPath,但每次加载页面时 Id 都不同

例如,如果我的 xpath 对于下面的代码是 .//*[@id='mi_205']/span[2]

<ul id="197" class="menu sub-menu" role="menu" data-parent="mi_196" style="z-index: 20000; top: 139px; left: 47px;">
<li id="mi_199" class="menu-item" role="menuitem" title="View contents" command="view-content" style="-moz-user-focus: ignore;">
<li id="mi_201" class="menu-item" role="menuitem" title="View history" command="view-history" style="-moz-user-focus: ignore;">
<li id="mi_203" class="menu-item menu-item-separator" role="separator" style="-moz-user-focus: ignore;">
<li id="mi_205" class="menu-item hover focus" role="menuitem" title="Add file(s)..." command="add-new-file" style="-moz-user-focus: ignore;">
<span class="icon bowtie-icon bowtie-math-plus-light"/>
<span class="text">Add file(s)...</span>
<span class="html"/>
</li>

下次 XPath 更改为其他内容时,我提到的 XPath 不再有效。我想点击“添加文件”的链接。

【问题讨论】:

  • 同 CSS 选择器

标签: java xpath selenium-webdriver tags


【解决方案1】:

您可以使用 CssSelector。你的选择器应该是这样的:

"li[command='add-new-file']"

这是一个链接,可以帮助您了解一些漂亮的 ccs 选择器技巧: "The Skinny on CSS Attribute Selectors"

【讨论】:

    【解决方案2】:

    如果你下面没有任何其他li项并且添加文件总是最后一个li,你可以使用;

    //ul/li[last()]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-11
      • 1970-01-01
      • 1970-01-01
      • 2021-02-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多