2015-06-22 34 views
0

在下面的代码:父“格”有三个孩子“跨越”,“脚本”和“跨度”。但我需要“N/A”的父母“div”的价值。 “N/A”不属于div的任何属性。它只是父母“div”的价值。需要一个XPath的:在具有多个父母的孩子,但我只需要父值

<div class="ah-text-align-right ah-font-xsmall" style=""> 
    <span id="_dcmanageinvestmentsportlet_WAR_ahdcmnginvportlet__FDROR_110hidden" style="display:none"> 
    <script type="text/javascript"> 
    <span class="ah-float-left"> 
N/A 

</div> 
+1

xpath'/ div'是否不够? –

+0

'正常化空间(// DIV)'' – splash58

+0

// DIV [文本()= 'N/A']' – CaBieberach

回答

1

为了得到您可以在子元素的XPath后用双点..父元素。 为了让你可以使用XPath text()功能的元素的文本,而是依赖于任何环境,并使用代码实现的XPath,它可能不可用。请注意,元素的文本将返回此元素的实际文本节点以及子元素的所有文本节点。

因为如果你搜索一个跨度的父与啊 - 浮动左类的话,那么XPath的应该是类似以下内容:

//span[@class='ah-float-left']/.. 

为了得到父母的文本,你要用如下:

//span[@class='ah-float-left']/../text() 

注:寻找元素增长类的名称可能会返回这反过来会返回元素的集合您收集的父元素和父节点文本的集合,这可能不是所期望的。我建议通过id来查找子元素,因为xhtml规定元素id是唯一的。因此,父div的xpath应该如下所示:

//span[@id='_dcmanageinvestmentsportlet_WAR_ahdcmnginvportlet__FDROR_110hidden']/.. 
+0

// span [@ class ='ah-float-left'] /../ text():这个xpath也按照我的要求工作。 thnks eduard。 :) –

+0

@sumitarana很高兴它帮助。不要忘记将答案标记为已接受。 –

相关问题