2013-12-10 94 views
0

此页面上的某些属性值(如href和id值)由具有标记的标识值的脚本生成。为了生成元素id标签的值来点击它,我需要它引用的项目的标识符。这是项目列表,我只能通过元素中的文本名称来描述它们。然后,我需要去href元素具有列出的id值的父级。在HTML看起来像这样:Selenium - 在搜索子元素后从父元素获取href

<a class="item" href="#/subscription/90cefc7a42c2c3240142d973496d1287"> 
    <div class="col-xs-3 col-lg-2 item-list-image text-left"> 
     <stuff> 
    </div> 
    <div class="col-xs-7 col-lg-4"> 
     <h4> 
      <strong class="ng-binding">Smoke Sequential</strong> 
     </h4> 
     <i class="icon-monitor"></i> 
     <span class="ng-scope" translate-values="{"status":"Active"}" translate="subscription.currentStatus">Active Subscription</span> 
    </div> 
    <div class="col-xs-4 visible-lg"> 
     <stuff> 
    </div> 
</a> 

我认为解决的办法是findElement(By.XPath(东西))或者一个cssSelector,但我也不知道救我的灵魂。任何想法将不胜感激。

+0

我不太明白你想要提取什么,以及你有什么作为你发布的HTML示例的输入数据。你能解释一下你想从样本中得到什么吗? –

回答

0

XPath是唯一具有的概念的定位策略。

因此,你坚持下去。下面是C#代码来获得给定元素的父(你没有指定过什么语言使用你):

IWebElement parent = element.FindElement(By.XPath("..")); 

这倒到..中的XPath意味着直接父的事实。