XSLT <xsl:sort> 元素
<xsl:sort> 元素用于对结果进行排序
<xsl:sort select="expression" lang="language-code" data-type="text|number|qname" order="ascending|descending" case-order="upper-first|lower-first"/>
<xsl:sort> 总是位于 <xsl:for-each> 或 <xsl:apply-templates> 内部
属性
属性 | 值 | 描述 |
---|---|---|
select | XPath-expression | 可选。规定节点的排序关键字,即根据哪个节点或节点集来排序 |
lang | language-code | 可选。规定排序所用的语言 |
data-type | textnumberqname | 可选。规定被排序的数据的数据类型。默认是 "text" |
order | ascendingdescending | 可选。规定排序顺序。默认是 "ascending" |
case-order | upper-firstlower-first | 可选。规定是否首先按大写字母顺序进行排序 |
范例
下面的代码以 artist 为关键字进行排序
<?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <html> <body> <h2>My CD Collection</h2> <table border="1"> <tr bgcolor="#9acd32"> <th>Title</th> <th>Artist</th> </tr> <xsl:for-each select="catalog/cd">`<xsl:sort select="artist"/>`<tr> <td><xsl:value-of select="title"/></td> <td><xsl:value-of select="artist"/></td> </tr> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet>