有两种方法:

1.使用 order-by 属性
IE5 & IE6 都适用:可以使用 xsl:for-each 和 xsl:apply-templates 两个元素的 order-by 属性来控制XSL处理器对元素的处理顺序,排序显示XML资料.
XSL 对输出元素排序方法<xsl:for-each select="//BOOK" order-by="+NAME">
XSL 对输出元素排序方法XSL 对输出元素排序方法XSL 对输出元素排序方法
XSL 对输出元素排序方法
</xsl:for-each>
XSL 对输出元素排序方法
XSL 对输出元素排序方法
<xsl:for-each select="//BOOK" order-by="+NAME;-AUTHOR>
XSL 对输出元素排序方法XSL 对输出元素排序方法XSL 对输出元素排序方法
XSL 对输出元素排序方法</xsl:for-each>

其中, +元素 为升序, -元素 为降序.如果要多个元素依次排列,中间用;号.


2.使用 xsl:sort 元素
IE6 适用,功能比上者更加强大. xsl:sort 同样需要和 xsl:for-each 和 xsl:apply-templates 两个元素配合使用,只是它不再作为这两个元素的属性,而是作为这两个元素的子元素出现.

它有几个重要属性:
data-type:如果为number,表示按数字格式排序;如果为text,表示按文本格式排序.
case-order:表示大写在前还是小写在前.可以设为 upper-first 或 lower-first.
lang:可以设为一个 NMTOKEN 值来表示按照该种语言排序.
order:可以设为ascending或descending,表示按升序还是降序排序.
XSL 对输出元素排序方法<xsl:for-each select="//BOOK">
XSL 对输出元素排序方法    
<xsl:sort select="NAME" data-type="text"/>
XSL 对输出元素排序方法    XSL 对输出元素排序方法XSL 对输出元素排序方法
XSL 对输出元素排序方法
</xsl:for-each>

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-02-16
  • 2022-12-23
  • 2022-12-23
  • 2021-08-29
  • 2022-12-23
猜你喜欢
  • 2021-09-17
  • 2021-06-29
  • 2021-12-24
  • 2022-12-23
  • 2022-12-23
  • 2021-11-14
  • 2021-11-17
相关资源
相似解决方案