蝙蝠岛资源网 Design By www.hbtsch.com
什么是选择模式
选择模式语句将数据从XML中提取出来,是一种简单获得数据的方法,这几个标记都有一个select属性,选取XML中特定的结点名的数据
注意,每个xsl文件都需要导入xsl的命名空间,http://www.w3.org/TR/WD-xsl,例如在xml头声明之后加入:<p xmlns:xsl="http://www.w3.org/TR/WD-xsl">
1、<xsl:for-each>
这个语句是逐个(select)选择某条件,应用条件。例如,有如下数据库的用户列表:
<?xml version="1.0" encoding="GB2312"?>
<Users>
<User>
<Name>5do8</Name>
<ID>1</ID>
<Professional>.NET,PHP Design</Professional>
</User>
<User>
<Name>cjjer</Name>
<ID>2</ID>
<Professional>DataBase Manage</Professional>
</User>
</Users>
需要只输出全部的Name列,这里有两个问题:
1:需要把每个User节点下面的数据都选择,就是需要定位到User节点,我们使用for-each下面的select。
2:需要选择Name节点,我们使用value-of下面的select。
建立xsl文件:
<?xml version="1.0" encoding="GB2312"?>
<p xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:for-each select="Users">
<BODY>
<xsl:for-each select="User">
<xsl:value-of select="Name" /><hr />
</xsl:for-each>
</BODY>
</xsl:for-each></p>
保存为UserList_for-each.xsl.在xml文件第二行增加:
<?xml:stylesheet type="text/xsl" href="UserList_for-each.xsl"?>
在IE5+以上的浏览器中效果可见。
for-each还支持排序,order-by语句,它的语法是以分号(;)分隔、作为排序标准的列表。在列表元素前添加加号(+)表示按此标记的内容以升序排序,添加减号(-)表示逆序排序。作为一种简化的表示就是,排序标准列表就是由select规定的标记的子标记的序列,每个标记之间以(;)分隔。
2、<xsl:value-of>
value-of是选择当前节点的值
例如如上的例子中选择了<xsl:value-of select="Name" />就是选择Name节点的值。
xsl:sort排序处理
对于用xsl:for-each或xsl:apply-templates匹配的节点,可使用xsl:sort将所选节点内容进行排序
按大小写排序
<xsl:sort case-order="upper-first" select="@id"/> 以id为关键字按大写优先排序
<xsl:sort case-order="lower-first" select="@id"/> 以id为关键字按小写优先排序
按字母顺序排序
<xsl:sort order="ascending" select="@id "/> 以id为关键字按字母升序排序
<xsl:sort order="descending" select="@id "/> 以id为关键字按字母降序排序
按数据类型排序
<xsl:sort data-type="text" select="@id"/> 以id为关键字按文本类型排序,如对于一组id数据101,2,44,305 来说,排序结果是101,2,305,44
<xsl:sort data-type="number" select="@id"/> 以id为关键字按数据类型排序,上面一组数据的排序结果是2,44,101,305
另外,还有一种指定排序的方法,就是在前面学生花名册例中所使用的order-by: <xsl:for-each select="student" order-by="name"> 也可使得输出学生时按名字排序。
3、<xsl:xsl:apply-templates>
xsl:apply-templates是应用已经定义的模板
例如:<xsl:apply-template select="Users/User">……</xsl:apply-template>
如上三者,都有共同的使用方法,就是必须要Select语句选择,关于Select语句的语法,就是XPath,关于XPath的使用规范,将在下一讲中详细描述。
选择模式语句将数据从XML中提取出来,是一种简单获得数据的方法,这几个标记都有一个select属性,选取XML中特定的结点名的数据
注意,每个xsl文件都需要导入xsl的命名空间,http://www.w3.org/TR/WD-xsl,例如在xml头声明之后加入:<p xmlns:xsl="http://www.w3.org/TR/WD-xsl">
1、<xsl:for-each>
这个语句是逐个(select)选择某条件,应用条件。例如,有如下数据库的用户列表:
<?xml version="1.0" encoding="GB2312"?>
<Users>
<User>
<Name>5do8</Name>
<ID>1</ID>
<Professional>.NET,PHP Design</Professional>
</User>
<User>
<Name>cjjer</Name>
<ID>2</ID>
<Professional>DataBase Manage</Professional>
</User>
</Users>
需要只输出全部的Name列,这里有两个问题:
1:需要把每个User节点下面的数据都选择,就是需要定位到User节点,我们使用for-each下面的select。
2:需要选择Name节点,我们使用value-of下面的select。
建立xsl文件:
<?xml version="1.0" encoding="GB2312"?>
<p xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:for-each select="Users">
<BODY>
<xsl:for-each select="User">
<xsl:value-of select="Name" /><hr />
</xsl:for-each>
</BODY>
</xsl:for-each></p>
保存为UserList_for-each.xsl.在xml文件第二行增加:
<?xml:stylesheet type="text/xsl" href="UserList_for-each.xsl"?>
在IE5+以上的浏览器中效果可见。
for-each还支持排序,order-by语句,它的语法是以分号(;)分隔、作为排序标准的列表。在列表元素前添加加号(+)表示按此标记的内容以升序排序,添加减号(-)表示逆序排序。作为一种简化的表示就是,排序标准列表就是由select规定的标记的子标记的序列,每个标记之间以(;)分隔。
2、<xsl:value-of>
value-of是选择当前节点的值
例如如上的例子中选择了<xsl:value-of select="Name" />就是选择Name节点的值。
xsl:sort排序处理
对于用xsl:for-each或xsl:apply-templates匹配的节点,可使用xsl:sort将所选节点内容进行排序
按大小写排序
<xsl:sort case-order="upper-first" select="@id"/> 以id为关键字按大写优先排序
<xsl:sort case-order="lower-first" select="@id"/> 以id为关键字按小写优先排序
按字母顺序排序
<xsl:sort order="ascending" select="@id "/> 以id为关键字按字母升序排序
<xsl:sort order="descending" select="@id "/> 以id为关键字按字母降序排序
按数据类型排序
<xsl:sort data-type="text" select="@id"/> 以id为关键字按文本类型排序,如对于一组id数据101,2,44,305 来说,排序结果是101,2,305,44
<xsl:sort data-type="number" select="@id"/> 以id为关键字按数据类型排序,上面一组数据的排序结果是2,44,101,305
另外,还有一种指定排序的方法,就是在前面学生花名册例中所使用的order-by: <xsl:for-each select="student" order-by="name"> 也可使得输出学生时按名字排序。
3、<xsl:xsl:apply-templates>
xsl:apply-templates是应用已经定义的模板
例如:<xsl:apply-template select="Users/User">……</xsl:apply-template>
如上三者,都有共同的使用方法,就是必须要Select语句选择,关于Select语句的语法,就是XPath,关于XPath的使用规范,将在下一讲中详细描述。
标签:
选择模式,-,XSL教程,-,2
蝙蝠岛资源网 Design By www.hbtsch.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
蝙蝠岛资源网 Design By www.hbtsch.com
暂无选择模式 - XSL教程 - 2的评论...
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新日志
2024年12月22日
2024年12月22日
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]