Webdriver如何使用Xpath查找给定元素的父fieldset元素

时间:2014-04-28 09:57:45

标签: selenium xpath

我有一个类似下面的HTML

<fieldset id='fs1'>
  <legend>Basic Details</legend>
  <div>
    <input type='text' id='txt1'/>
    <input type='text' id='txt2'/>
  </div>
</fieldset>

我可以通过说

来到文本框
driver.findElement(By.id("txt1"));

现在,我希望我的webdriver检查此文本框(或此阶段的任何其他元素)是否为字段集的子项。换句话说,我想找到给定元素的父“fieldset”标签。

我需要使用xpath而不是别的。

现在,我尝试使用(“..”)作为我的xpath查询,它将返回Div父级,我必须继续这样做,直到我点击字段集。我只是想知道是否有一个直接的解决方案。 任何人都可以建议一个xpath查询,这将帮助我做我已经解释过的事情吗?

谢谢, 斯利拉姆

2 个答案:

答案 0 :(得分:1)

一种方法是搜索fieldset并在儿童中包含条件:

.//fieldset[.//input[@id="txt1"]]

答案 1 :(得分:1)

您正在寻找ancestor:: axis,其中包括父,祖父母等等。特别是:

ancestor::fieldset[1]

将为当前上下文元素提供最近的封闭fieldset元素祖先(如果上下文元素不在fieldset内,则为空节点集。)