Thomas J.S.: ais einen element in mehrere inputs auslesen

Beitrag lesen

Hallo,
Ein recursives Template:

großer Nachteil - fällt mir gerade auf - : wenn es zweimal dasselbe Zeichen vorkommt gibts eine Endlosschleife!

Jetzt nicht mehr:

<xsl:template name="createinputelement">
 <xsl:param name="node" />
 <xsl:param name="inputcounter" />
 <xsl:param name="valueforfirstinput" select="substring($node,1,1)" />
 <xsl:variable name="valueforrestinput" select="substring($node, $inputcounter+1)" />
 xsl:choose
  <xsl:when test="$valueforrestinput != ''">
   <input type="text" name="{concat(local-name($node), $valueforfirstinput)}" value="{$valueforfirstinput}" /><xsl:value-of select="$inputcounter" /><br />
   <xsl:call-template name="createinputelement">
    <xsl:with-param name="node" select="$node" />
    <xsl:with-param name="inputcounter" select="$inputcounter +1" />
    <xsl:with-param name="valueforfirstinput" select="substring($valueforrestinput,1,1)" />
   </xsl:call-template>
  </xsl:when>
  xsl:otherwise
   <input type="text" name="{concat(local-name($node), $valueforfirstinput)}" value="{$valueforfirstinput}" />
  </xsl:otherwise>
 </xsl:choose>
</xsl:template>
</xsl:stylesheet>

Aufruf mit:
<xsl:call-template name="createinputelement">
  <xsl:with-param name="node" select="." />
  <xsl:with-param name="inputcounter" select="1" />
 </xsl:call-template>

Grüße
Thomas