gpt4 book ai didi

XSLT 中的变量如何在同一 XSLT 的不同位置声明、赋值和使用该变量

转载 作者:行者123 更新时间:2023-12-03 07:59:01 25 4
gpt4 key购买 nike

请考虑我的“A/B”xPath 表达式返回以下节点

  <Q ID="12345">
----
----
</Q>

这是我的变量


这就是我尝试为 tempVariable 变量赋值的方式
  <xsl:for-each select="A/B">
<xsl:variable name="tempVariable"><xsl:value-of select="@ID"/></xsl:variable>
</xsl:for-each>

毕竟我正在尝试使用这个变量
  <xsl:if test="$tempVariable='12345'">
....
....
</xsl:if>

但据我所知,我得到的是 $tempVariable =""这是不正确的。

有人可以告诉我我哪里做错了,或者我如何以正确的方式做到这一点。
谢谢你。

最佳答案

为什么像 A/B 这样的路径选择一个 Q元素?如果你想使用一个变量,你需要确保它在范围内。您在示例中显示的变量在 xsl:for-each 内的范围内, 在 xsl:variable 之后元素。

如果要使用 for-each 之外的变量您需要在 for-each 之外声明它.

但是我认为你可以简单地做

<xsl:variable name="v1" select="A/B/@ID"/>
<xsl:if test="$v1 = '12345'">..</xsl:if>

不需要 for-each .

关于XSLT 中的变量如何在同一 XSLT 的不同位置声明、赋值和使用该变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16526716/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com