【问题标题】:How to use for-each in xslt?如何在 xslt 中使用 for-each?
【发布时间】:2018-08-10 20:45:57
【问题描述】:

我有 XML,它有一组教育括号。 我使用包含相关代码的 xml-stylesheet:

  <xsl:for-each select="CV/education">
  <xsl:value-of select="CV/education/college"/>
  <xsl:value-of select="CV/education/fieldOfStudy"/>
  <xsl:value-of select="CV/education/studyStartDate"/>
  <xsl:value-of select="CV/education/studyEndDate"/>
  </xsl:for-each>

然而,这似乎没有显示相关值。 我放了

      <xsl:value-of select="CV/education/college"/>

在 for-each 括号之后,它似乎工作。 能否请您告诉我使用 for-each 有什么不正确的地方?

【问题讨论】:

  • accept@zx485 对您的问题给出很好的回答(+1),并考虑接受您在本网站上针对您过去的问题收到的一些回答。谢谢。

标签: xml xslt


【解决方案1】:

您忽略了表达式中的当前节点:&lt;xsl:for-each select="CV/education"&gt; 将当前节点设置为 CV/education,因此您不必在 xsl:value-of 表达式中重复该路径。相对路径是相对于当前节点计算的。

将您的代码简化为

<xsl:for-each select="CV/education">
  <xsl:value-of select="college"/>
  <xsl:value-of select="fieldOfStudy"/>
  <xsl:value-of select="studyStartDate"/>
  <xsl:value-of select="studyEndDate"/>
</xsl:for-each>

它应该可以按需要工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多