如何获取当前节点的父节点名?
Posted
技术标签:
【中文标题】如何获取当前节点的父节点名?【英文标题】:How to get the parent node name of the current node? 【发布时间】:2011-10-24 18:43:50 【问题描述】:获取当前节点的父节点名称的正确语法是什么?我知道这是关于 AxisName 父级的,但是正确的语法是什么? 比如下面的xml
<netcdf xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2" location="file:/dev/null" iosp="lasp.tss.iosp.ValueGeneratorIOSP" start="0" increment="1">
<attribute name="title" value="Vector time series"/>
<dimension name="time" length="100"/>
<variable name="time" shape="time" type="double">
<attribute name="units" type="String" value="seconds since 1970-01-01T00:00"/>
</variable>
<group name="Vector" tsdsType="Structure" shape="time">
<variable name="x" shape="time" type="double"/>
<variable name="y" shape="time" type="double"/>
<variable name="z" shape="time" type="double"/>
</group>
</netcdf>
对于元素变量,我应该得到 netcdf 或 group。提前致谢。
【问题讨论】:
【参考方案1】:使用:
name(..)
..
的缩写是parent::node()
的简写。
请注意:并非每个父母都有名字。例如,文档节点 (/
) 是文档顶部元素 (/*
) 的父节点,并且没有名称。
【讨论】:
在我的情况下使用它来检索父名称驱动到 Out Memory 错误,而不是使用 name(parent::*) @CarlosCocom,这仅表明您使用的特定 XPath 实现存在错误。如果您能提供一个 XML 文档(最好很短)和准确的 XPath 表达式,那将会很有趣。【参考方案2】:name(parent::*)
应该这样做。显然,只有一个父母。
【讨论】:
以上是关于如何获取当前节点的父节点名?的主要内容,如果未能解决你的问题,请参考以下文章
jquery如何获取某一个兄弟节点,不是全部的,是指定的兄弟节点