【问题标题】:Unable to find correct Target selector to click an element无法找到正确的目标选择器来单击元素
【发布时间】:2018-06-21 21:44:12
【问题描述】:

请查看下图,它显示了开发者工具窗口中的网页代码,并告诉我“折旧模型”的正确选择器。以红色突出显示的文本是恒定的,但周围的文本是动态的。所以我尝试使用 contains 选择器来定位但不成功。我想避免使用 XPATH,因为 div 元素之前和之后的数量可能会不断变化。

我正在使用 Selenium IDE,因此 RC/Webdriver 的 C#/Java 代码没有多大帮助。

Selenium IDE 生成的目标路径是这样的:

css=#dhxId_rgWATog7lC3E_27572|6059|6152 > td.sub_item_text > div.sub_item_text

我试过了

css=contains('27572') > td.sub_item_text > div.sub_item_text

但是没有用。

请推荐。我被困住了。谢谢。

【问题讨论】:

    标签: selenium xpath css-selectors selenium-ide


    【解决方案1】:

    当您尝试Locator Strategy 时:

    css=contains('27572') > td.sub_item_text > div.sub_item_text
    

    不工作的原因

    The :contains pseudo-class isn't in the CSS Spec and is not supported by either Firefox or Chrome (even outside WebDriver).

    解决方案

    您可以按照现有的DOM Tree 使用以下xpath

    xpath=//tr[@class='sub_item'][contains(@id,'27572')]//td[@class='sub_item_text']/div[@class='sub_item_text'][contains(.,'Depreciations Models')]
    

    【讨论】:

      【解决方案2】:

      我想这是正确的方法:

      <style>
         [id*="27572"] > td.sub_item_text > div.sub_item_text{
            color:red;
         }
      

      <table>
              <tbody>
                  <tr id="dhxId_rgWATog7lC3E_27572|6059|6152" class="sub_item">
                      <td class="sub_item_icon">
                           <i class="fa fa-user epc-down-circled-2"></i>
                      </td>
                      <td class="sub_item_text">
                           <div class="sub_item_text"> Depriciations Models</div>
                      </td>
                  </tr>
              </tbody>
          </table>
      

      它将设置所有id属性值包含“27572”的元素。

      【讨论】:

      • 谢谢斯隆。我不想用红色突出显示它。我会试一试并更新你。
      • 红色或任何颜色由您决定,您想选择它对吗?我只是添加了红色作为示例。它可以是任何东西。很高兴这对你有用。
      • 我使用了与您相同的类型代码,并且可以正常工作。
      • 你的 css 样式是否可以访问到你的页面?
      • 我不需要 css 样式。我需要为 selenium IDE 编写的选择器。
      猜你喜欢
      • 2021-10-08
      • 1970-01-01
      • 1970-01-01
      • 2021-03-19
      • 2016-11-29
      • 1970-01-01
      • 1970-01-01
      • 2021-09-24
      • 2017-10-03
      相关资源
      最近更新 更多