0

数値である変数xがあります。ラインがあります。( "<name>James</name>") この文を何x回も印刷する必要があります。簡単な方法でできますか?複雑にならずに?

4

3 に答える 3

2

XSLT 2.0を使用している場合は、これを行うことができます...

<xsl:for-each select="for $i in 1 to $x return $i">
 <name>James</name>
</xsl:for-each>
于 2012-07-11T15:43:14.533 に答える
1

以下は未確認です...

<xsl:call-template name="show">
  <xsl:with-param name="text">&lt;name&gt;James&lt;/name&gt;</xsl:with-param>
  <xsl:with-param name="count">50</xsl:with-param>
</xsl:call-template>

<xsl:template name="show">
  <xsl:param name="text"/>
  <xsl:param name="count"/>
  <xsl:value-of select="$text"/>
  <xsl:if test="number($count)>0">
    <xsl:call-template name="show">
      <xsl:with-param name="text" select="$text"/>
      <xsl:with-param name="count" select="number($count)-1"/>
    </xsl:call-template>
  </xsl:if>
</xsl:template>

<name>とを持つように更新されました</name>

上記の作業のXmlPlayground は次のとおりです。

于 2012-07-11T15:33:59.123 に答える
0

スタイルシートのどこかに次を追加できます。

<mydata>
    <x/><x/><x/><x/> <!-- to print four times -->
</mydata>

それから

<xsl:for-each select="document()//mydata/x">
    <name>James</name>
</xsl:for-each>

これは、XSLT プログラムに独自のデータを含める機能を利用し、document関数を介してアクセスします (スタイルシート自体を示す引数はありません)。

于 2012-07-13T03:59:23.727 に答える