2016-12-20 2 views
-1

Мне нужно создать переменную в моем документе xsl, которая будет считать элементы в моем XML-файле, а затем отобразить это число в конечном результате. Здесь я думаю, что я правильно сделал объявление переменной, ну, вероятно, нет. Как правильно создать эту переменную, а затем «распечатать» в HTML части благодаряXSL, переменная для числа элементов

<xsl:template match="/"> 
    <html> 
     <head> 
      <title>Albumy Burzum</title> 

      <style type="text/css"> 

      h2 { font-size: 40px; font-family: arial; color: #000000; } 

      </style> 


     </head> 
     <body> 
      <h2>Albumy Burzum</h2> 
      <table border="5"> 
       <tr> 
        <th>name</th> 
        <th>year</th> 
        <th>genre</th> 
        <th>label</th> 
        <th>songs_number</th> 
        <th>link</th> 

       </tr> 
      <xsl:apply-templates /> 
     </table> 

     <h3>Number of elements:</h3> 


     </body> 
    </html> 
</xsl:template> 





<xsl:attribute-set name="reference"> 
    <xsl:attribute name="href"><xsl:value-of select="link"/></xsl:attribute> 
</xsl:attribute-set> 

<xsl:template match="link"> 

    <xsl:element name="a" use-attribute-sets="reference"><xsl:value-of select="link"/></xsl:element> 
    <br/> 
</xsl:template> 

<xsl:template match="album"> 
    <tr> 
    <td><xsl:value-of select="name"/></td> 
    <td><xsl:value-of select="year"/></td> 
    <td><xsl:value-of select="genre"/></td> 
    <td><xsl:value-of select="label"/></td> 
    <td><xsl:value-of select="songs_number"/></td> 
    <td><xsl:value-of select="link"/></td> 

    </tr> 
</xsl:template> 

<xsl:variable name="countElements"> 
    <xsl:value-of select="count(album)"/> 

</xsl:variable> 

ответ

0

Ну, вы даже не показали нам структуру входного XML и объяснил, какие элементы вы хотите подсчитать, но если вы замените <h3>Number of elements:</h3> на <h3>Number of elements: <xsl:value-of select="count(//album)"/></h3>, тогда вы должны получить результат подсчета любых элементов album в документе, полностью без использования переменной.

+0

Спасибо, что ответили, но я только что понял – coldman1

+2

Если ответ верный, отметьте его как принятый. –

Смежные вопросы