【问题标题】:xpath for parents sibling父母兄弟姐妹的xpath
【发布时间】:2016-03-20 05:31:33
【问题描述】:

我的 HTML 看起来像这样

 <tr>
    <td>
        <span>
            <img>fieldId:
        </span>
    </td>
    <td>
        <span>
            <input value="false" type="text">
            <input type="hidden" >
        </span>
    </td>
  <td></td>
  <td></td>
</tr>

我想找到文本输入字段,但我只知道第一个 td/span/img 下存在的 fieldId 我是这样写的xpath

//span[contains(text(),'fieldId')]/../following-sibling::td

但它找到了第一个 td 之后存在的所有 td,所以我尝试了这样

//span[contains(text(),'fieldId')]/../following-sibling::td[0]

但这不起作用

我哪里出错了??

请帮忙

【问题讨论】:

    标签: java selenium xpath selenium-webdriver


    【解决方案1】:

    XPath 索引从1 开始,而不是0

    //span[contains(text(),'fieldId')]/../following-sibling::td[1]
    

    或者,您可以尝试这种方式:

    //td[contains(span, 'fieldId')]/following-sibling::td[1]
    

    【讨论】:

    • 感谢索引是问题@har07
    【解决方案2】:

    试试这个 (//input[@type="text"])1 这将从页面中选择第一个输入文本类型的字段

    使用以下链接获取更多示例:

    Click for more details

    也是,xpath 索引从 1 开始,而不是 0。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多