`
wind_bell
  • 浏览: 292035 次
  • 性别: Icon_minigender_2
  • 来自: 广州
社区版块
存档分类
最新评论

跟我学XSL(四)

    博客分类:
  • xml
阅读更多
<xsl:choose>
语法:<xsl:choose>
属性:无,表示一个多选测试的开始

<xsl:when>
语法:
<xsl:when expr="script-expression" language="language-name" test="pattern">
属性:
   expr ── 脚本语言表达式,计算结果为“真”或“假”;如果结果为“真”,且通过test,则在输出中显示其中内容(可省略此项属性)。
   language ── expr属性中表达式的脚本语言类型,其取值与HTML标记SCRIPT的LANGUAGE属性的取值相同,缺省为“JScript”。
   test ── 源数据测试条件。

<xsl:otherwise>
语法:<xsl:otherwise>
属性:无,在一个多选测试中,如果没有不满足<xsl:when>规定的条件,如果在最后有此标记,则输出此标记中的内容。

以学生成绩单为例,要求按成绩的高低给出优秀( >85)、一般(70~85)、起格(60~69)、不及格(< 60),而不是显示分数:

grade.xml:

<?xml version="1.0" encoding="GB2312"?>
<?xml:stylesheet type="text/xsl" href="grade.xsl"?>
<document>
<grade>
<name>大胖</name><english>80</english>
<math>90</math><chymest>90</chymest>
</grade>
<grade>
<name>小花</name><english>98</english>
<math>70</math><chymest>85</chymest>
</grade>
</document>

grade.xsl:

<?xml version="1.0" encoding="GB2312"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<HTML>
<HEAD><TITLE>成绩单</TITLE></HEAD>
<BODY><xsl:apply-templates select="document"/></BODY>
</HTML>
</xsl:template>
<xsl:template match="document">
<TABLE border="1" cellspacing="0">
<TH>姓名</TH> <TH>英语</TH><TH>数学</TH><TH>化学</TH>
<xsl:apply-templates select="grade"/>
</TABLE>
</xsl:template>
<xsl:template match="grade">
<TR>
<TD><xsl:apply-templates select="name"/></TD>
<TD><xsl:apply-templates select="english"/></TD>
<TD><xsl:apply-templates select="math"/></TD>
<TD><xsl:apply-templates select="chymest"/></TD>
</TR>
</xsl:template>
<xsl:template match="name"><xsl:value-of/></xsl:template>
<xsl:template match="english|math|chymest">
<xsl:choose>
<xsl:when test=".[value() $gt$ 85]">优秀</xsl:when>
<xsl:when test=".[value() $gt$ 70]">一般</xsl:when>
<xsl:when test=".[value() $gt$ 60]">及格</xsl:when>
<xsl:otherwise>不及格</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>

说明:

    在<xsl:choose>选择中,从第一个<xsl:when>开始,逐个测试,直到满足一个测试条件就将其中的内容输出,不再测试后面的条件;如果不满足任何一个条件,则输出<xsl:otherwise>中的内容。
  标记对<xsl:when></xsl:when>与<xsl:otherwise></xsl:otherwise>中可嵌套<xsl:if>或<xsl:choose>。


分享到:
评论

相关推荐

    跟我学XSL

    跟我学XSL这本书不错,大家看看吧!

    跟我学XSL电子资源下载

    《跟我学XSL》是一本深入浅出地介绍XSL(eXtensible Stylesheet Language)技术的专业教程。XSL是一种强大的XML(eXtensible Markup Language)转换语言,主要用于XML文档的格式化和转换,使得数据在不同的环境中...

    跟我学XSL(pdf)

    "跟我学XSL"这本书很可能深入浅出地介绍了这一技术,帮助初学者快速掌握XSL的核心概念和实际应用。 1. **XSL简介** - XSL由XSLT(Transformations)、XPath(Path)和XSL-FO(Formatting Objects)三部分组成。 -...

    跟我学XSL.chm

    跟我学XSL.chm,XSL中文文档。

    跟我学xsl.doc

    四、深入学习XSL 学习XSL不仅包括理解基本概念,还需要掌握如变量、函数、模板选择、流控制(如条件语句和循环)、以及如何导入和链接其他XSL样式表等高级特性。此外,熟悉XPath的语法和功能对于有效使用XSL至关...

    跟我学XSL(三)

    《跟我学XSL(三)》这篇博文主要探讨了XSL(Extensible Stylesheet Language)这一转换语言的高级技巧和应用。XSL是一种强大的XML(eXtensible Markup Language)处理工具,它允许我们将XML数据转换成其他格式,如...

    跟我学xsl

    #### 四、XSL 的引入 **XSL (Extensible Stylesheet Language)** 是一种用于转换 XML 数据的语言。XSL 包含三个部分: 1. **XSL Transformations (XSLT)**:用于转换 XML 文档,可以根据需求改变 XML 数据的结构和...

    跟我学XSL(一)

    《跟我学XSL(一)》这篇博文主要探讨了XSL(Extensible Stylesheet Language)这一重要的XML处理技术。XSL是一种用于转换XML文档格式的语言,它能够将XML数据转换成HTML、PDF或其他格式,以适应不同的显示需求。在...

    跟我学XSL(XML)

    XSL转载的学习资料,分享。可作为入门教材

    跟我学XSL.rar

    一本非常好的XSL入门教程, 分成以下几大单元 1.第一个XML文档 2.XSL入门 3.XSL模板与匹配模式 4.测试模式 5.XSL中的choose 6.运算符,关系与逻辑运算符,特殊字符等 7.XSL函数之一 8.脚本与XSL的结合及应用 9...

Global site tag (gtag.js) - Google Analytics