You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

XSLT转换无法生成正确行数:仅显示首个步骤的求助

解决XSLT转换仅显示首个步骤的问题

嘿,我之前也踩过这个坑!当XSLT转换HTML后只显示第一个步骤、其余步骤失踪,大概率是你的XSLT代码没有正确遍历所有<step>节点,或者路径匹配出了问题。下面是几个常见的排查和解决方向:

  • 检查是否遍历了所有步骤节点
    如果你在XSLT里直接选取了第一个<step>(比如用了select="step[1]"),或者没有用循环/模板匹配来处理所有节点,自然只会显示第一个步骤。你可以用<xsl:for-each>来遍历每个步骤:

    <xsl:template match="/">
      <html>
        <body>
          <h2>操作步骤</h2>
          <ol>
            <!-- 这里的路径要和你的XML结构对应,比如root/steps/step -->
            <xsl:for-each select="your-root-node/steps/step">
              <li>
                <!-- 这里可以输出步骤的内容,比如标题、描述等 -->
                <strong><xsl:value-of select="step-title"/></strong>
                <p><xsl:value-of select="step-description"/></p>
              </li>
            </xsl:for-each>
          </ol>
        </body>
      </html>
    </xsl:template>
    
  • 用模板匹配的方式处理所有步骤(更符合XSLT最佳实践)
    如果你习惯用模板驱动的写法,可以定义匹配<step>的模板,然后用<xsl:apply-templates>来应用到所有步骤节点上:

    <xsl:template match="/">
      <html>
        <body>
          <h2>操作步骤</h2>
          <ol>
            <!-- 匹配所有step节点 -->
            <xsl:apply-templates select="your-root-node/steps/step"/>
          </ol>
        </body>
      </html>
    </xsl:template>
    
    <xsl:template match="step">
      <li>
        <strong><xsl:value-of select="step-title"/></strong>
        <p><xsl:value-of select="step-description"/></p>
      </li>
    </xsl:template>
    
  • 确认XML结构和XPath路径是否匹配
    有时候问题出在XPath路径写错了,比如你的步骤节点嵌套层级不对,或者根节点名称和XSLT里写的不一致。比如你的XML如果是这样:

    <guide>
      <procedure>
        <step>
          <step-title>步骤1</step-title>
          <step-description>这是第一步</step-description>
        </step>
        <step>
          <step-title>步骤2</step-title>
          <step-description>这是第二步</step-description>
        </step>
      </procedure>
    </guide>
    

    那你在XSLT里的路径就要写成guide/procedure/step,而不是steps/step,否则会找不到后续节点。

如果还是有问题,可以把你的XML和XSLT代码贴出来,这样能更精准地定位问题哦!

内容的提问来源于stack exchange,提问作者Stevi G

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 06:54:56