【问题标题】:How to get parent id from current id in Selenium + Java如何从 Selenium + Java 中的当前 id 获取父 id
【发布时间】:2018-12-17 21:13:11
【问题描述】:

<ul id="ul_id">
  <li id="f_li"><a href="#">First li</a>
    <ul id="f_li_ul_id">
      <li id="li_ul_li1"><a href="#">First li ul li</a></li>
      <li id="li_ul_li2"><a href="#">Second li ul li</a></li>
      <li id="li_ul_li3"><a href="#">Third li ul li</a></li>
    </ul>
  </li>
  <li id="s_li"><a href="#">Second li</a></li>
</ul>

我需要从我当前的 id li_ul_li2 中获取 f_li_ul_id,并从我当前的 id s_li 中获取 ul_id。

【问题讨论】:

标签: java selenium


【解决方案1】:

如果你想从li_ul_li2 到达f_li_ul_id,你可以使用这个xpath:

//li[@id='li_ul_li2']/parent::ul[@id='f_li_ul_id']  

对于来自s_liul_id,您可以这样编写xpath:

//li[@id='s_li']/parent::ul[@id='ul_id']

【讨论】:

  • driver.findElement(By.xpath("//*[@id='menu-item-1164']/parent::ul")) 我试过这个我的输出是 [[ChromeDriver : XP 上的 chrome (372c9e1f4b57203ec23742b80150fd61)] -> xpath: //*[@id='menu-item-1164']/parent::ul]
  • 我想在不输入父 ul id 的情况下动态获取父 ul id
  • 我没有看到任何具有此 id 的元素:menu-item-1164
  • 然后试试这个://li[@id='li_ul_li2']/..,它应该给你父母而不考虑ul id。
  • 我试过输出也是 [[ChromeDriver: chrome on XP (372c9e1f4b57203ec23742b80150fd61)] -> xpath: //*[@id='menu-item-1164']/..]跨度>
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-07-05
  • 1970-01-01
  • 2018-05-12
  • 1970-01-01
  • 1970-01-01
  • 2019-07-08
  • 2016-03-31
相关资源
最近更新 更多