首页 > 解决方案 > 无法找到正确的目标选择器来单击元素

问题描述

请查看下图,它显示了开发人员工具窗口中的网页代码,并告诉我“折旧模型”的正确选择器。以红色突出显示的文本是恒定的,但周围的文本是动态的。所以我尝试使用包含选择器来定位但不成功。我想避免 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

但它没有用。

请建议。我被困住了。谢谢。

标签: seleniumxpathcss-selectorsselenium-ide

解决方案


我想这将是正确的方法:

<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>

它将设置具有包含“27572”及其内部的 id 属性值的所有元素。


推荐阅读