在XSL中动态生成tr的id

时间:2011-07-24 12:13:09

标签: xslt

在XSL中,我想动态生成tr的id。 id应该是我将从循环中得到的值。我将在for循环中生成一个tr。任何人都可以帮助我吗?提前谢谢。

例如,

<xsl:for-each select="books/book">
<tr id="">//I want to generate the tr with id as the value  which i got for book
<td></td>
<td></td>
<tr>
</xsl:for-each>

3 个答案:

答案 0 :(得分:1)

使用<tr id="{generate-id()}">

答案 1 :(得分:0)

如果您的id属性应设置为<book>元素的内部文本,则可以执行以下操作:

<tr>
    <xsl:attribute name="id">
        <xsl:value-of select="." />
    </xsl:attribute>
    <td></td>
    <td></td>
</tr>

以上也可以缩写为:

<tr id="{.}">
    <td></td>
    <td></td>
</tr>

答案 2 :(得分:0)

您是否想要每个book节点中的书内数字或生成的数字,如1,2,....,4?

对于最后一个使用此:

 <xsl:for-each select="books/book">
   <tr>
     <xsl:attribute name="id">
       <xsl:number count="book" level="any"/>
     </xsl:attribute>
     <td></td>
     <td></td>
   </tr>
 </xsl:for-each>

有关编号元素的详细信息,请点击此处:Dave Pawson XSLT FAQw3schools