`
wind_bell
  • 浏览: 286329 次
  • 性别: 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跟我学XSL跟我学XSL跟我学XSL跟我学XSL跟我学XSL

    跟我学xsl

    跟我学 xsl 大家有时间可以看看

    跟我学xsl.doc

    跟我学XSL(一)——第一个XML文檔 随着Internet的发展,越来越多的信息进入互联网,信息的交换、检索、保存及再利用等迫切的需求使HTML这种最常用的标记语言已越来越捉襟见肘。HTML将资料内容与表现融为一体,可...

    跟我学XSL.chm

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

    跟我学XSL(一)

    博文链接:https://wind-bell.iteye.com/blog/24927

    跟我学XSL(pdf)

    介绍xlst,非常简洁

    跟我学XSL(XML)

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

    跟我学XSL.rar

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

    跟我学XSL(三)

    博文链接:https://wind-bell.iteye.com/blog/24931

Global site tag (gtag.js) - Google Analytics