Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
上一个节点,看看父节点是否等同于XSLT中的特定节点_Xslt_Xpath_Xslt 1.0_Xslt 2.0_Xpath 2.0 - Fatal编程技术网

上一个节点,看看父节点是否等同于XSLT中的特定节点

上一个节点,看看父节点是否等同于XSLT中的特定节点,xslt,xpath,xslt-1.0,xslt-2.0,xpath-2.0,Xslt,Xpath,Xslt 1.0,Xslt 2.0,Xpath 2.0,我想看看我所指的当前节点的父节点是否等于某个特定值。我按照下面的方法做了,但没有用 例如 在“岁”的时候,我试过。但这是不正确的。正确的方法是什么?有人能帮忙吗 我在一个模板中,该模板对v:name和v:age都适用。有些v:age不是v:name的孩子。我想确保我所指的v:age是一个v:name的孩子。这就是我想要在test属性中使用的内容。使用OP的注释中的: 我在一个模板中,该模板对v:name和v:age都适用。 有v:age不是v:name的孩子。我想 确保我指的v:age是v:

我想看看我所指的当前节点的父节点是否等于某个特定值。我按照下面的方法做了,但没有用

例如


在“岁”的时候,我试过
。但这是不正确的。正确的方法是什么?有人能帮忙吗


我在一个模板中,该模板对v:name和v:age都适用。有些v:age不是v:name的孩子。我想确保我所指的v:age是一个v:name的孩子。这就是我想要在test属性中使用的内容。

使用OP的注释中的


我在一个模板中,该模板对
v:name
v:age
都适用。 有
v:age
不是
v:name
的孩子。我想 确保我指的
v:age
v:name
的孩子。那个 是我想要的测试属性

使用

parent::v:name
这在
xsl:if
中变成:

<xsl:if test="parent::v:name">
  <!-- Whatever processing is necessary. -->
</xsl:if>

我怀疑,当你说你想知道父节点是否“等于”某个特定值时,你的真正意思是你想知道它的名称是否等于某个特定值(如果你给出输入和输出的示例,这一点就很清楚了)


如果我的猜测是正确的,请使用

我在一个模板中,这对v:name和v:age都是正确的。有些v:age不是v:name的孩子。我想确保我所指的v:age是一个v:name的孩子。这就是我在测试属性中想要的内容。
请发布您拥有的XML样本以及您想要的XML或HTML或纯文本结果,除非只是执行
。然而,在我看来,编写模板
是处理此类检查的更好、更像XSLT的方法。这需要更多的上下文。请发布示例输入文档、预期输出和迄今为止您拥有的任何样式表。很可能您可以通过在模板模式上使用适当的谓词来避免这种情况。
<xsl:if test="parent::v:name">
  <!-- Whatever processing is necessary. -->
</xsl:if>