国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院

首頁(yè) > 開(kāi)發(fā) > XML > 正文

XML輕松學(xué)習(xí)手冊(cè)(5)XML實(shí)例解析

2024-09-05 20:54:12
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

第五章:XML實(shí)例解析

XML在不同領(lǐng)域有著廣泛的應(yīng)用,比如在科技領(lǐng)域的MathML,無(wú)線通信應(yīng)用的WML,在網(wǎng)絡(luò)圖象方面的SVG等等,我們這里側(cè)重討論XML在web上的應(yīng)用。XML在web上應(yīng)用主要是利用其強(qiáng)大的數(shù)據(jù)操作能力。一般用XML配合javascript和asp等服務(wù)器端程序,可以實(shí)現(xiàn)網(wǎng)絡(luò)上幾乎所有的應(yīng)用需求。

考慮講解方便,我們?cè)谙旅娼榻B一個(gè)簡(jiǎn)單的實(shí)例,不包含服務(wù)器端程序。目的在于讓您對(duì)XML的數(shù)據(jù)操作能力有一個(gè)感性的認(rèn)識(shí)。

好,我們首先[ 點(diǎn)擊這里 ]來(lái)看實(shí)例的效果。(請(qǐng)用IE5.0以上版本瀏覽器打開(kāi))

這是一個(gè)簡(jiǎn)單的CD唱片數(shù)據(jù)檢索功能。你通過(guò)點(diǎn)擊"上一張","下一張"可以看到單張CD的有關(guān)信息。這樣的效果我們?cè)瓉?lái)用兩種方法可以實(shí)現(xiàn):

1、利用DHTML,將數(shù)據(jù)隱藏在不同的層中,通過(guò)鼠標(biāo)事件依次顯示;

2、利用后臺(tái)程序(如ASP,CGI,PHP,JSP等),調(diào)用服務(wù)器端的數(shù)據(jù)。

但是在這個(gè)實(shí)例中,我們打開(kāi)頁(yè)面原代碼可以看到,其中沒(méi)有用DHTML的DIV,也沒(méi)有表單的action,它完全是用XML來(lái)實(shí)現(xiàn)的。下面我們來(lái)分析它的制作過(guò)程:

第一步:定義新標(biāo)識(shí)

根據(jù)實(shí)際的CD數(shù)據(jù),首先新建一個(gè)名為<CD>的標(biāo)識(shí);其次建立它相關(guān)的數(shù)據(jù)標(biāo)識(shí),分別是:CD名稱<Title>,演唱者<Artist>,出版年代<Year>,國(guó)家<Country>,發(fā)行公司<Company>和價(jià)格<Price>;最后還要建立一個(gè)名為目錄<CATALOG>的標(biāo)識(shí)。為什么要再建立一個(gè)<CATALOG>標(biāo)識(shí)呢?因?yàn)樵赬ML文檔中規(guī)定,必須且只能有一個(gè)根元素(標(biāo)識(shí)),我們有多個(gè)CD數(shù)據(jù),這些數(shù)據(jù)是并列的關(guān)系,所以需要為這些并列的元素建立一個(gè)根元素。

以上元素的定義和關(guān)系都完全符合XML標(biāo)準(zhǔn),不需要特別的DTD文件來(lái)定義,所以可以省略DTD定義。如果我們想使用DTD來(lái)定義,以上過(guò)程可以表示為:

以下為引用的內(nèi)容:
<!ELEMENT CATALOG (CD)*>
<!ELEMENT CD (Title,Artist,Year,Country,Company,Price)>
<!ELEMENT Title (#PCDATA)>
<!ELEMENT Artist (#PCDATA)>
<!ELEMENT Year (#PCDATA)>
<!ELEMENT Country (#PCDATA)>
<!ELEMENT Company (#PCDATA)>
<!ELEMENT Price (#PCDATA)>

這段代碼表示:元素CATALOG包含多個(gè)CD子元素,而子元素CD又依次包含Title, Artist, Year, Country, Company, Price 六個(gè)子元素,它們的內(nèi)容都定義為文本(字符,數(shù)字,文本)。(注:具體的語(yǔ)法說(shuō)明可以看上一章關(guān)于DTD的介紹)

第二步:建立XML文檔

以下為引用的內(nèi)容:

<?xml version="1.0"?>
<CATALOG>
<CD>
<TITLE>Empire Burlesque</TITLE>
<ARTIST>Bob Dylan</ARTIST>
<COUNTRY>USA</COUNTRY>
<COMPANY>Columbia</COMPANY>
<PRICE>10.90</PRICE>
<YEAR>1985</YEAR>
</CD>
<CD>
<TITLE>Hide your heart</TITLE>
<ARTIST>Bonnie Tylor</ARTIST>
<COUNTRY>UK</COUNTRY>
<COMPANY>CBS Records</COMPANY>
<PRICE>9.90</PRICE>
<YEAR>1988</YEAR>
</CD>
<CD>
<TITLE>Greatest Hits</TITLE>
<ARTIST>Dolly Parton</ARTIST>
<COUNTRY>USA</COUNTRY>
<COMPANY>RCA</COMPANY>
<PRICE>9.90</PRICE>
<YEAR>1982</YEAR>
</CD>
<CD>
<TITLE>Still got the blues</TITLE>
<ARTIST>Gary More</ARTIST>
<COUNTRY>UK</COUNTRY>
<COMPANY>Virgin redords</COMPANY>
<PRICE>10.20</PRICE>
<YEAR>1990</YEAR>
</CD>
<CD>
<TITLE>Eros</TITLE>
<ARTIST>Eros Ramazzotti</ARTIST>
<COUNTRY>EU</COUNTRY>
<COMPANY>BMG</COMPANY>
<PRICE>9.90</PRICE>
<YEAR>1997</YEAR>
</CD>
</CATALOG>

上面代碼首先用<?xml version="1.0"?>聲明語(yǔ)句表明這是一個(gè)XML文檔,它的格式遵守XML 1.0標(biāo)準(zhǔn)規(guī)范。然后是文檔內(nèi)容,結(jié)構(gòu)樹(shù)非常清晰:

以下為引用的內(nèi)容:

<CATALOG>
<CD>
......
</CD>
<CD>
......
</CD>

</CATALOG>

一共定義了5組數(shù)據(jù)。我們將上面的代碼存為cd.xml文件,以備調(diào)用。

第三步:建立相應(yīng)的HTML文件

1、導(dǎo)入XML數(shù)據(jù)

我們知道,目前流行的瀏覽器中,暫時(shí)只有微軟的IE5.0以上版本瀏覽器支持XML。IE是通過(guò)在HTML中的object物件來(lái)支持插入XML,并通過(guò)js的XMLDocument.load()方法來(lái)導(dǎo)入數(shù)據(jù)。我們看代碼:

以下為引用的內(nèi)容:
<object WIDTH="0" HEIGHT="0"
CLASSID="clsid:550dda30-0541-11d2-9ca9-0060b0ec3d39" ID="xmldso">
</object>

定義一個(gè)object,ID名為xmldso。然后在head區(qū)用js引入xml數(shù)據(jù):

以下為引用的內(nèi)容:
<script for="window" event="onload">
xmldso.XMLDocument.load("cd.xml");
</script>

2、捆綁數(shù)據(jù)

然后將用<SPAN>標(biāo)識(shí)來(lái)將XML數(shù)據(jù)綁定在表格中。其中ID,DATASRC,DTATFLD都是<SPAN>的屬性。代碼如下:

以下為引用的內(nèi)容:
<table>
<tr><td>Title:</td><td><SPAN ID="title" DATASRC=#xmldso DATAFLD="TITLE"></SPAN></td></tr>
<tr><td>Artist:</td><td><SPAN ID="artist" DATASRC=#xmldso DATAFLD="ARTIST"></SPAN></td></tr>
<tr><td>Year:</td><td><SPAN ID="year" DATASRC=#xmldso DATAFLD="YEAR"></SPAN></td></tr>
<tr><td>Country:</td><td><SPAN ID="country" DATASRC=#xmldso DATAFLD="COUNTRY"></SPAN></td></tr>
<tr><td>Company:</td><td><SPAN ID="company" DATASRC=#xmldso DATAFLD="COMPANY"></SPAN></td></tr>
<tr><td>Price:</td><td><SPAN ID="price" DATASRC=#xmldso DATAFLD="PRICE"></SPAN></td></tr>
</table>

3、動(dòng)作操作

最后,為數(shù)據(jù)提供瀏覽按鈕:

以下為引用的內(nèi)容:
<INPUT TYPE=button VALUE="上一張CD" ONCLICK="moveprevious()">
<INPUT TYPE=button VALUE="下一張CD" ONCLICK="movenext()">

并利用js來(lái)完成兩個(gè)鼠標(biāo)點(diǎn)擊功能:movenext()和moveprevious()。在head區(qū)加入如下代碼:

以下為引用的內(nèi)容:

<script language="JavaScript">
function movenext()
{
if (xmldso.recordset.absoluteposition < xmldso.recordset.recordcount)
{
xmldso.recordset.movenext();
}
}
function moveprevious()
{
if (xmldso.recordset.absoluteposition > 1)
{
xmldso.recordset.moveprevious();
}
}
</script>

好,我們先看HTML文件的全部原代碼:

以下為引用的內(nèi)容:

<html>
<head>

<script for="window" event="onload">
xmldso.XMLDocument.load("cd.xml");
</script>

<script language="JavaScript">
function movenext()
{
if (xmldso.recordset.absoluteposition < xmldso.recordset.recordcount)
{
xmldso.recordset.movenext();
}
}
function moveprevious()
{
if (xmldso.recordset.absoluteposition > 1)
{
xmldso.recordset.moveprevious();
}
}
</script>

<TITLE>CD Navigate</TITLE>
</head>

<body>
<p>
<object WIDTH="0" HEIGHT="0"
CLASSID="clsid:550dda30-0541-11d2-9ca9-0060b0ec3d39" ID="xmldso">
</object>

<table>
<tr><td>Title:</td><td><SPAN ID="title" DATASRC=#xmldso DATAFLD="TITLE"></SPAN></td></tr>
<tr><td>Artist:</td><td><SPAN ID="artist" DATASRC=#xmldso DATAFLD="ARTIST"></SPAN></td></tr>
<tr><td>Year:</td><td><SPAN ID="year" DATASRC=#xmldso DATAFLD="YEAR"></SPAN></td></tr>
<tr><td>Country:</td><td><SPAN ID="country" DATASRC=#xmldso DATAFLD="COUNTRY"></SPAN></td></tr>
<tr><td>Company:</td><td><SPAN ID="company" DATASRC=#xmldso DATAFLD="COMPANY"></SPAN></td></tr>
<tr><td>Price:</td><td><SPAN ID="price" DATASRC=#xmldso DATAFLD="PRICE"></SPAN></td></tr>
</table>

<p>
<INPUT TYPE=button VALUE="上一張CD" ONCLICK="moveprevious()">
<INPUT TYPE=button VALUE="下一張CD" ONCLICK="movenext()">
</p>

</body>
</html>

將以上代碼存為cd.htm文件,于第二步的cd.xml文件放在一起。打開(kāi)cd.htm文件,你就看見(jiàn)和上面實(shí)例一樣的效果了。

好,到今天為止,我們已經(jīng)學(xué)習(xí)了關(guān)于XML的不少知識(shí),我們來(lái)總結(jié)一下前面五個(gè)章節(jié),分別是XML快速入門(mén),XML的概念原理,XML的術(shù)語(yǔ),XML的語(yǔ)法和本章的實(shí)例解析。到這里,教程部分就結(jié)束了。在寫(xiě)作過(guò)程中,阿捷盡最大努力將有關(guān)XML概念講得通俗易懂,盡量把自己的理解告訴給大家,但因?yàn)楸救藢W(xué)習(xí)XML時(shí)間也不長(zhǎng),對(duì)整個(gè)XML的技術(shù)把握還不夠系統(tǒng)和深入,所以難免有疏漏的地方,請(qǐng)大家指正和諒解,謝謝!

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院
国产精品欧美韩国日本久久| 男人天堂亚洲| 国产小视频在线播放| 国产女王在线**视频| 国产无套粉嫩白浆在线2022年 | 日本一卡二卡四卡精品| 91嫩草在线播放| 在线观看的网站你懂的| wwww亚洲| 99色在线视频| www.夜夜操.com| 中文字幕不卡免费视频| 在线观看精品视频一区二区三区| 欧美黑人乱大交| 国产三级视频在线看| 亚洲一区免费在线| 国产麻豆视频| 亚洲综合激情六月婷婷在线观看 | 爱福利在线视频| 久久国产精品久久久久久小说| 国产卡二和卡三的视频| 在线看a视频| 中文字幕国产视频| 99reav| 中文字幕在线视频网| www在线观看播放免费视频日本| 国产精品欧美韩国日本久久| 青青草免费在线视频| 97一区二区三区| 国产小视频在线播放| 免费精品国产自产拍观看| 国产福利电影在线观看| a视频在线看| 精品福利视频导航大全| 五月伊人六月| 国产嫩草在线视频| а√最新版在线天堂| 亚洲精品白浆| 性网站在线播放| www.超级碰| a级片国产精品自在拍在线播放| 国产福利片在线| 精品一区二区三区在线观看l| 国产精品欧美色图| 国产精品伦一区二区三区级视频频| 日本黄色免费网址| 欧美婷婷久久五月精品三区| 国产成人精品实拍在线| 精品卡一卡卡2卡3网站| 97一区二区三区| 亚洲精品久久久成人| 伊人影院在线观看| eeuss影院在线| 九九在线视频| 中文字幕专区| 69视频在线| 青青艹在线视频| 五月伊人六月| 精品国产一区二区三区久久久狼牙| 国产不卡一卡2卡三卡4卡5卡在线| 国产精品入口麻豆免费看| 国产网站免费观看| 国产精品777一区二区| 中文在线视频| 国内精品一区视频| 国产成人精品久久一区二区小说| 亚洲综合天堂网| 国产精品偷乱一区二区三区| 中文av字幕| 国产乱精品一区二区三区| 国产精品久久人| www.xxx黄| 精品国产免费第一区二区| 黄色片视频在线观看| 国产激情视频在线观看| 蜜桃视频网站在线| 在线观看av的网站| 久草亚洲一区| 99久久国产视频| 国产网站免费看| 国产在线www| 亚洲第一成年免费网站| √天堂中文在线| 久草国产视频| 欧美日韩视频精品一区二区| 国产福利一区二区在线精品| 久久久久久久久免费视频| 国产激情视频在线观看| 国产女王在线**视频 | 国产中文字幕在线播放| 国产精品第八页| 中文字幕在线影视资源| 牛牛热在线视频| 日本欧美在线视频免费观看| 999精品网| 国产精品黄页网站在线播放免费| 狠狠色丁香婷婷| 欧美性猛交p30| 美女被人操视频在线观看| 天天噜天天色| 操人视频91| 福利视频在线导航| 久热中文字幕精品视频在线| 在线视频二区| 欧美96在线| 国产乱视频在线观看| 国产卡一卡二卡三| 午夜在线小视频| 69免费视频| www亚洲天堂| 成在在线免费视频| 国产色视频网站| 在线中文字幕av| 日本一二区视频| 国产鲁鲁视频在线观看免费 | 开心婷婷激情| 免费观看v片在线观看| 国产中文字幕av| 午夜国产在线| 国产wwww| 日韩a视频在线观看| 成 人免费视频播放| 最新av免费看| 亚洲一区二区三区在线观看网站| 免费国产在线视频| 国产一级片在线| 在线国产三级| 国产乱子视频| 在线视频观看亚洲| 成在在线免费视频| 91社区在线观看| 国产字幕在线看| 在线观看wwww| 中文字幕麻豆| 久久这里精品| 91香蕉视频免费在线观看| 免费一区二区在线观看| 国产三级在线免费| 热99在线观看| 中文产幕区在线观看| 国产在线一二三| 伊人免费视频| 国产黄色免费电影| 国内自拍视频在线观看| 精品国产免费观看一区| 国产视频1区| 久久久久久国产视频| 亚洲图区综合| 精品全国在线一区二区| 91超碰国产在线| 国产男女av| 国产麻豆免费| 中文字幕在线免费| 99热在线免费观看| 国产中文字幕网| 欧美国产中文| 黄色av电影在线播放| 欧美精品另类| 黄污在线观看| 天堂在线看视频| 国产情侣高潮对白| 国产美女一区视频| 天堂在线亚洲| 国产精品午夜久久久久久| 福利视频网址导航| 国产美女自拍视频| 国产视频福利| 在线免费观看黄色片| www.三区| 午夜不卡视频| 国产高清在线观看| 在线国产三级| 二人午夜免费观看在线视频| 91sp网站在线观看入口| 国产午夜视频| av在线天天| 久久99亚洲网美利坚合众国| 国产精品综合久久久久| 国产区在线观看| eeuss影院www在线播放| 另类综合图区| 国产二区视频| 青青草免费在线视频| 国产性网软件大全| 精精国产xxxx视频在线动漫| 日本福利在线| 国产精品视频福利一区二区| 亚洲人在线播放| 最近中文字幕mv免费高清视频8| 91欧洲在线视精品在亚洲| 欧美日韩亚洲国内综合网| 六月天色婷婷| 在线天堂中文| 国产精品入口麻豆电影| 欧美日韩亚洲国内综合网| 国产黄色大片在线观看| 另类高清dbsm日本tvav| 99中文字幕一区| 国产三区视频在线观看| 久久99亚洲网美利坚合众国|