国产男女无遮挡_日本在线播放一区_国产精品黄页免费高清在线观看_国产精品爽爽爽

  • 熱門標簽

當前位置: 主頁 > 航空資料 > 計算機 >

時間:2010-08-09 13:05來源:藍天飛行翻譯 作者:admin
曝光臺 注意防騙 網曝天貓店富美金盛家居專營店坑蒙拐騙欺詐消費者

9.4.2 循環
循環是我們在過程語言中經常使用的命令。X S LT也支持循環命令,使用< x s l : f o r- e a c h . . . / >方
式。它的內容被重復執行直到最初X M L文檔中的元素符合指定的屬性。舉一個例子,我們能夠使
用f o r- e a c h命令把X M L書列表文檔轉換成表項在列表文檔中列出的X H T M L文檔。下面是一個
X S LT程序完整的清單,你將看到使用上的一些有趣的事情:
程序清單9 - 2 1
你可能注意到的第一件事情是它使用了與以往例子不同的格式。該程序僅僅包含了簡單的
第9章轉換XML使用335 下載
模板固定匹配根元素。事實上,在這個二選一的格式中包括< x s l : t e m p l a t e >這樣的命令是沒有必
要的。這個固定的模板是<xsl:template match=“/”>。
我們創建的表每個< I T E M >包含一行。在這個例子中,我們不能使用模板匹配機制,我們使
用f o r- e a c h命令循環始終貫穿程序,使用v a l u e - o f命令獲取元素內容:
程序清單9 - 2 2
我們告訴處理器,“對根< B O O K L I S T >元素中的每一個< I T E M >元素,寫< T I T L E >、
< C AT E G O RY >、< R E L E A S E _ D AT E >和< P R I C E >元素的內容進入表中”。循環命令的標準是從根
開始的一個XPa t h表達式;因此,我們不得不顯式地包含在文檔樹的分支中每一個< I T E M >的元
素。當不再有元素滿足條件時循環才能結束。
為了包含表單元格中的值,我們使用< x s l : v a l u e - o f . . . / >元素。與你所設想的一樣,它獲取了
匹配s e l e c t屬性的XPa t h表達式的節點的數據內容。
結果輸出顯示在圖9 - 1 4中。
圖9-14
9.4.3 排序
在我們的數據列表中移動數據,加入新的數據,連接合成文檔到C S S樣式表,之后,讓我們
加入排序。目標是先按照種類排序,再按照題目排序。
用到這個方法的X S L命令是< x s l : s o r t >。為了讓X S LT引擎排序,我們包括s e l e c t屬性設置到
XPa t h值。舉個例子,按題目排序,我們使用下面的命令:
問題是:我們怎么找到包含這種用法的例子。它是僅僅被使用在< x s l : a p p l y - t e m p l a t e s . . . / >或
336使用XML 高級編程
下載
者< x s l : f o r- e a c h . . . >元素中的一個指令元素,下面這個示例是對“循環”一節中示例的修改:
程序清單9 - 2 3
現在,< x s l : f o r- e a c h . . . >元素在怎樣處理被選擇的節點上采用了新的指令。引擎在用模板匹配
節點之前對它們進行排序。在上面的例子中,節點首先按照種類排序,然后按照題目排序,像
圖9 - 1 5顯示的一樣。
圖9-15
排序的次序按照< x s l : s o r t . . . / >中指定的元素次序排列。舉個例子,下面的命令將替代
< T I T L E >和< R E L E A E _ D AT E >對節點排序。
第9章轉換XML使用337 下載
記住,< s o r t >命令在對節點進行處理前,先對節點進行重新排序(參見圖9 - 1 6)。
圖9-16
9.4.4 條件處理
在過程語言中經常使用的另外一種命令是:
• if命令,在X S LT中以< x s l : i f >表示。
• if/elseif命令,在X S LT中以< x s l : c h o o s e >表示。
在這一點上,你可以想象聲明語言X S LT包含許多程序命令。事實上,產生聲明語言是讓你
不必顯式地告訴X S LT引擎輸出特定的內容。若對其指定內容或者模板,都將包含在輸出結果中。
盡管如此, X S LT仍然有一定的過程化特性。
現在看來前一個例子,僅僅想要在結果樹中包含< I T E M S >的部分S c r i p t i n g種類。為了這樣
做,我們需要一個過濾器,或一個i f命令,指出引擎“如果碰到這種情況就這樣做”。為了達到
這種結果,我們在模板中包括< x s l : i f >指令元素,像下面的例子這樣:
程序清單9 - 2 4
338使用XML 高級編程
下載
排序應用于源
XML文檔樹
根據排序后的
樹創建HTML表
現在,在循環中我們包含了一個被滿足的條件。如果條件是真,模板中包含在< x s l : i f >中的
元素被插入結果樹中。否則,模板僅僅被跳過了。
在t e s t屬性中,我們比較字符串S c r i p t i n g和< C AT E G O RY >元素的數據內容。實際上,我們使
用c o n t a i n s ( )函數檢驗是否< C AT E G O RY >元素文本節點包含S c r i p t i n g字符串。首先,如果字符串
s t r i n g 1包含字符串s t r i n g 2,c o n t a i n s ( s t r i n g 1 , s t r i n g 2 )函數返回布爾類型的T R U E,就像我們在上一
章看到的判斷部分。s t r i n g 1被使用< C AT E G O RY >數據內容的C AT E G O RY/text() XPa t h表達式包
含。一個元素數據內容總是一個字符串。
你可能注意到在屬性的值中,我們對字符串使用表達式' S c r i p t i n g '替代了" S c r i p t i n g ",使用單
引號而不是雙引號。這是因為僅僅整個屬性的值能被雙引號括起來。因此,任何需要被括起來
的表達式,像例子中的字符串那樣,僅能使用單引號,像下面的表達式這樣:
圖9 - 1 7的H T M L文檔的模式顯示了使用轉換樣式表。
圖9-17
有時我們需要一個命令顯示依賴于項目匹配的某種動作。例如,在前一個例子中,我們用
過濾基本樹的方法去轉換S c r i p t i n g類< I T E M >的一部分。在下一個例子中,我們將使用基于種類
類型的不同的轉換。
在這個例子中,我們想要表的每一行使用不同的顏色,每一個種類類型使用不同的顏色。
我們可以使用i f / e l s e i f方法,以< x s l : c h o o s e >元素的形式。這種形式總是和< x s l : w h e n >元素同時使
用的。每一個條件被< x s l : w h e n >命令判斷,更獨特的這種方式的判斷屬性:
 
中國航空網 m.k6050.com
航空翻譯 www.aviation.cn
本文鏈接地址:XML高級編程上(113)
国产男女无遮挡_日本在线播放一区_国产精品黄页免费高清在线观看_国产精品爽爽爽
亚洲精品一区二区三区蜜桃久 | 国产午夜精品视频一区二区三区| 91久久久一线二线三线品牌| 欧美日韩999| 国产又大又长又粗又黄| 国产精品视频成人| 欧美亚洲精品一区二区| 久久久噜久噜久久综合| 欧美一区二区三区四区在线 | 国产精品自产拍在线观看 | 成人久久一区二区| 欧美精品免费播放| 国产自产在线视频| 欧美精品制服第一页| 国产深夜男女无套内射| 欧美精品一本久久男人的天堂| 免费亚洲一区二区| 国产精品久久在线观看| 激情五月六月婷婷| 国产精品人人妻人人爽人人牛| 欧美性猛交久久久乱大交小说| 色噜噜狠狠狠综合曰曰曰| 青青在线视频一区二区三区| 久久久久免费网| 日韩伦理一区二区三区av在线| 亚洲综合精品伊人久久| 国产亚洲欧美一区二区三区| 日韩有码片在线观看| 日韩福利二区| 色偷偷av亚洲男人的天堂| 日本在线观看天堂男亚洲| 久久一区二区精品| 日本阿v视频在线观看| 久久国产手机看片| 青青视频免费在线观看| 国产精品久久激情| 国产一区二区三区黄| 久久999免费视频| 成人黄动漫网站免费| 欧美一区二区三区四区在线观看地址| 久久riav| 欧美日韩一区二区三| 国产精品免费久久久| 国产综合欧美在线看| 中文字幕av导航| 久久免费精品视频| 欧美深夜福利视频| 欧美激情精品久久久久久大尺度| 91精品国产高清| 欧美又大又粗又长| 美日韩精品免费视频| 91国产美女视频| 欧洲午夜精品久久久| 九色91av视频| 久久婷婷国产精品| 免费看国产一级片| 欧美激情一区二区三区在线视频观看| 91精品国产99| 僵尸世界大战2 在线播放| 亚洲午夜精品久久| 久久激情视频免费观看| 国产精品香蕉视屏| 日韩女在线观看| 精品久久久久久久免费人妻| 久青草视频在线播放| 免费久久99精品国产自| 午夜精品久久久内射近拍高清| 播播国产欧美激情| 99久热在线精品视频| 欧美亚洲成人免费| 亚洲欧洲国产日韩精品| 精品激情国产视频| 99色这里只有精品| 欧美一区在线直播| 综合久久国产| 国产精品日日做人人爱| 91成人免费观看网站| 国内精品在线一区| 日韩av不卡在线播放| 久久国产视频网站| 久久精品视频在线观看| 国产精品88a∨| 国产日韩欧美一区二区| 青青草免费在线视频观看| 一区二区免费在线观看| 国产精品久久久久久久久久东京 | 99视频免费观看蜜桃视频| 欧美激情亚洲天堂| 日本精品一区二区三区高清 久久| 美日韩精品视频免费看| 国产精品视频一二三四区| 久久亚洲一区二区| 国产美女精彩久久| 欧美日韩一区二区视频在线| 日本欧美一二三区| 一道本在线观看视频| 久久久国产精品x99av| 久久亚洲精品无码va白人极品| 国产免费一区二区视频| 黄色影院一级片| 欧美自拍视频在线| 日本最新一区二区三区视频观看| 亚洲综合在线小说| 中文字幕日韩精品久久| 欧美乱大交xxxxx| 国产精品十八以下禁看| 日韩在线免费高清视频| 久久资源av| 91精品国产沙发| 97精品免费视频| 高清一区二区三区四区五区| 欧美国产一区二区在线| 欧美一二三区| 欧美综合国产精品久久丁香| 日韩精品视频在线观看视频| 午夜精品亚洲一区二区三区嫩草| 亚洲在线www| 一区一区视频| 在线视频精品一区| 在线免费一区| 伊人久久大香线蕉av一区| 欧美激情第三页| 欧美精品videofree1080p| 色综合久综合久久综合久鬼88 | 美女啪啪无遮挡免费久久网站| 欧美麻豆久久久久久中文| 精品国产免费av| 久久久久久com| 亚洲综合中文字幕在线观看| 亚洲一区二区三区在线免费观看| 欧美激情亚洲综合一区| 中文字幕色呦呦| 亚洲精品久久区二区三区蜜桃臀| 亚洲色欲久久久综合网东京热| 亚洲啊啊啊啊啊| 午夜精品一区二区三区在线观看 | 91免费福利视频| 国产成人亚洲综合无码| 久久福利一区二区| 久久久av电影| 精品国产乱码久久久久久88av| 一区二区视频国产| 午夜精品久久久久久久99黑人| 日韩av免费网站| 欧美高清视频一区二区三区在线观看| 精品欧美一区二区精品久久| 国产区欧美区日韩区| 99精品视频播放| 九一免费在线观看| 国产精品久久亚洲| 九九精品在线观看| 色欲av无码一区二区人妻| 全黄性性激高免费视频| 免费拍拍拍网站| y111111国产精品久久婷婷| 久久精品午夜福利| 国产精品免费视频一区二区| 一区二区三区视频在线播放| 少妇性饥渴无码a区免费| 欧美久久久久久久| 国产欧美一区二区三区久久人妖| 国产精品av电影| 久久久精品日本| 欧美精品久久一区二区| 日韩小视频在线播放| 激情深爱综合网| 成人免费观看视频在线观看| 九一免费在线观看| 九九精品在线播放| 日韩亚洲不卡在线| 国产精品亚洲综合天堂夜夜| 国产成人一区二区三区别| 国产精品黄色av| 午夜精品一区二区三区在线视 | 国产精品入口夜色视频大尺度| 久久99视频精品| 日韩亚洲欧美精品| 国产乱子夫妻xx黑人xyx真爽| 久久精品.com| 一区二区三区在线观看www| 欧洲日本亚洲国产区| www婷婷av久久久影片| 国产精品视频网站在线观看| 亚洲国产一区二区三区在线 | av免费观看网| 国产精品久久久久国产a级| 日韩在线三级| 国产欧美日韩在线播放| 久久综合九色综合久99| 久久91精品国产| 欧美日本韩国在线| 91精品国产自产在线老师啪| 久久综合88中文色鬼| 欧美精品在欧美一区二区| 91精品久久久久久久| 色综合91久久精品中文字幕| 欧美综合一区第一页| 久久日韩精品| 亚洲熟妇av一区二区三区| 国产在线视频91|