xsl-list
[Top] [All Lists]

[xsl] 1 + 1 = 11

2006-04-18 10:19:08
What am I missing? I define a parameter, get the highest existing row number and I want to add a value to it -- so I can add the next table row with a new index. I get the index value correctly, but when I add one (1) to it, I get the string "11", rather than the number 2. Note that I specifically set the param to a number via the number() function. I've also tried using the number() function inside the select attribute of the apply-templates element, trying to coerce the result, but to no avail.

<xsl:template match="ntpServerTable">
  <xsl:param name="rowindex">
     <xsl:for-each select="ntpServerTableRow">
<xsl:sort select="ntpServerTableRowIndex" data-type="number" order="descending" />
       <xsl:choose>
          <xsl:when test="position() = 1">
            <xsl:value-of select="number(ntpServerTableRowIndex)"/>
         </xsl:when>
         <xsl:otherwise>0</xsl:otherwise>
      </xsl:choose>
    </xsl:for-each>
  </xsl:param>
  <xsl:apply-templates select="ntpServerTableRow"/>
<ntpServerTableRowIndex><xsl:value-of select="$rowindex+1"/></ntpServerTableRowIndex>


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>