麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > XML > 正文

解讀XSL的選擇模式

2024-09-05 20:54:41
字體:
來源:轉載
供稿:網友
什么是選擇模式

選擇模式語句將數據從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的使用規范,將在下一講中詳細描述。
 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 免费观看一级 | 色中色激情影院 | 12av毛片 | 亚洲欧美国产高清 | 九九视频精品在线 | 91性高湖久久久久久久久网站 | 国产亚洲在线 | 国产亚洲精品久久久闺蜜 | 92自拍视频| 久久久久久久九九九九 | 成av人在线观看 | 久久丝袜脚交足黄网站免费 | 亚洲国产色婷婷 | 久久久一区二区三区四区 | 午夜激情视频网站 | 精品一区二区在线观看 | 国产福利不卡一区二区三区 | 久久av免费 | 中文字幕在线播放不卡 | 久久久精品福利 | 亚洲成人在线免费 | 日本羞羞的午夜电视剧 | 国产91一区二区三区 | 日韩视频一区二区 | 91精品国产乱码久久久久久久久 | 亚洲第一激情网 | 91美女福利视频 | 日韩精品羞羞答答 | 成人福利视频网站 | 全免费午夜一级毛片真人 | 国产精品成人免费一区久久羞羞 | 天天草天天干天天 | 欧美一级高清免费 | 国产成人强伦免费视频网站 | 久久婷婷一区二区三区 | 精品一区二区三区在线观看视频 | 免费a视频 | 中文字幕观看 | 国产午夜三级一区二区三桃花影视 | 精品久久久久久综合日本 | 亚洲精品一区二区三区在线看 |