作者:Belltree <singers> <singer>Celine Dion</singer> <singer>Britney Spears</singer> <singer>Enya</singe> <singer>Christina Aguilera</singer> <singer>Backstreet Boys</singer> <singer>Spice Girls</singer> </singers> 一般我们取出一组数据后都喜欢将数据放入一个表格中,这样会方便数据比较和阅读。但XSL并没有提供一种机制来进行任 意的分组。所以必须使用xsl:if结合context() 来完成这项工作。下面的例子返回一个两列的表格。 <TABLE BORDER="1"> <xsl:for-each select="singers/singer"> <xsl:if exPR="(childNumber(this) % 2) == 1"> <TR> <TD><xsl:value-of /></TD> <TD><xsl:value-of select="../singer[index() $gt$ context()!index()][0]"/></TD> </TR> </xsl:if> </xsl:for-each> </TABLE> 如果你要返回一个三列的例子,你就要加一个新的类似的代码,只让每三个元素才产生新的一行。由此你可以推断一个需 要n列的表格如何实现。 <TABLE BORDER="1"> <xsl:for-each select="singers/singer"> <xsl:if expr="(childNumber(this) % 3) == 1"> <TR> <TD><xsl:value-of /></TD> <TD><xsl:value-of select="../singer[index() $gt$ context()!index()][0]"/></TD> <TD><xsl:value-of select="../singer[index() $gt$ context()!index()][1]"/></TD> </TR> </xsl:if> </xsl:for-each> </TABLE> 注意:联系我时,请一定说明是从【S】看到的信息,谢谢。 |
联系电话: 联系 QQ: 打电话给我、或者加QQ好友时,请一定说明来自(三亚上门维修电脑)谢谢您! 三亚上门维修电脑 | 编辑: