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

首頁 > 開發 > XML > 正文

Web設計中如何使用XML數據

2024-09-05 20:53:30
字體:
來源:轉載
供稿:網友

XML數據源對象是一個ActiveX控件,允許你在XML文件和HTML頁面之間操作數據。本文將向你展示如何從各種XML數據源中提取數據,以及如何使用JavaScript顯示這些數據。

XML數據源對象DSO是一個微軟ActiveX控件,構建在微軟IE4以后的版本上。這個對象允許你把一個外部的XML文件或者嵌入HTML文件中的內容提取到HTML頁面中。

你可以在一個Web頁面中使用XML - DSO從一個外部XML文件中選取內容,從嵌入Web頁面的XML中提取XML數據,然后使用JavaScript操作這些數據。然而,并不建議在Internet中使用這個對象,因為DSO只能工作在MSIE 4以上的瀏覽器中,因此這可能會帶來一些兼容性問題。 所以,在企業內部網使用XML-DSO是很合適的。

開始

為了初始化XML - DSO對象,我們使用<OBJECT>標記。 用于XML-DSO的CLASSID是:

CLSID:550dda30-0541-11d2-9ca9-0060b0ec3d39

這ID唯一標識XML-DSO。使用下面的代碼在一個Web頁面中初始化這個控件:

<OBJECT ID="SomeID" CLASSID="CLSID:550dda30-0541-11d2-9ca9-0060b0ec3d39"></OBJECT>

雖然大部分對象需要許多參數與之相關聯,但是XML-DSO不需要任何參數。

使用一個XML數據島析取數據

首先,通過使用<XML>標記包含一個XML數據島。其次,給它分配一個ID,xmldb --以備以后使用。 數據實際上是使用HTML標記:<ALT>,<SPAN>,<DIV>等等提取的。代碼列表1中的代碼使用了<SPAN>標記。datasrc屬性指定了你想從中提取數據的那個數據島。datafld屬性指定了你想要的數據的XML標記。所以,第一個<SPAN>提取名稱,而第二<SPAN>提取性別。

代碼列表1:

<!-- example1.htm -->
<html>
<head>
<title>XML DSO-example1.htm</title>
</head>
<body bgcolor="#FFFFFF">
<xml id="xmldb">
<db>
<member>
<name>Premshree Pillai<name>
<sex>male</sex>
</member>
<member>
<name>Vinod</name>
<sex>male</sex>
</member>
</db>
</xml>

<span datasrc="#xmldb" datafld="name"<</span>
<br>
<span datasrc="#xmldb" datafld="sex"></span>

</body>
</html>

注意這段代碼沒有初始化一個XML-DSO對象。這是因為XML數據島的使用中已經隱式地創建了一個。輸出應為:

Premshree Pillai
male

注意在XML數據島中有兩個<name>和<sex>標記。使用這個方法,你只能提取這些標記中的第一個實例。代碼列表2中的代碼使用<TABLE>標記提取所有的實例:

輸出將是:
Name Sex
Premshree Pillai male
Vinod male

在代碼列表2中,<TABLE>標記使用<TD>標記內的<DIV>標記提取數據。表格將自動重復<member>(<name>和<sex>的母標記)的每個實例。 代碼列表2:

<!-- example2.htm -->
<html>
<head>
<title>XML DSO-example2.htm</title>
</head>
<body bgcolor="#FFFFFF">

<xml id="xmldb">
<db>
<member>
<name>Premshree Pillai<name>
<sex>male</sex>
</member>
<member>
<name>Vinod</name>
<sex>male</sex>
</member>
</db>
</xml>

<table datasrc="#xmldb" border="1">
<thead>
<th>Name</th>
<th>Sex</th>
</thead>
<tr>
<td><div datafld="name"></div></td>
<td><div datafld="sex"></div></td>
</tr>
</table>

</body>
</html>

使用外部XML文件提取數據

為了使用XML-DSO加載一個外部XML文件,你必須顯式的包含這個對象并且使用一些JavaScript。

首先創建一個XML-DSO對象,使用ID myXML。添加寬度和高度屬性到<OBJECT>標記中,然后設置它們的值為0。這保證XML-DSO對象不會占據你的Web頁面的任何空間。

其次,使用datasrc創建一個象myXML一樣的表--類似于代碼列表2中一樣。代碼使用<DIV>標記(在TD標記之)提取數據,使用datafld作為第一欄的信息,并且使用URL作為第二欄。添加<SCRIPT>標記,因為在這里,外部的XML使用Java腳本顯式地聲明你想要加載的XML文件。

設置變量xmlDso為myXML.XMLDocument。myXML引用你已經創建的對象。接下來,使用XML-DSO的load()方法加載example3.xml。文件example3.xml連接到對象myXML上。

<!-- example3.xml -->
<?xml version="1.0" ?>
<ticker>
<item>
<message>JavaScript Ticker using XML DSO</message>
<URL>http://someURL.com</URL>
</item>
</ticker>
現在,研究一下下面的HTML頁面:

<!-- example3.htm -->
<html>
<head>
<title>XML DSO-example3.htm</title>
<script language="JavaScript">
function load() {
var xmlDso=myXML.XMLDocument;
xmlDso.load("example3.xml");
}
</script>
</head>
<body bgcolor="#FFFFFF" onLoad="load()">

<object id="myXML" CLASSID="clsid:550dda30-0541-11d2-9ca9-0060b0ec3d39"
width="0" height="0"></object>

<table datasrc="#myXML" border="1">
<thead>
<th>Message</th>
<th>URL</th>
</thead>
<tr>
<td><div datafld="message"></div></td>
<td><div datafld="URL"></div></td>
</tr>
</table>

</body>
</html>

輸出應是:

Message URL
JavaScript Ticker using XML DSO http://someURL.com

上面的腳本非常特殊化。下面給出一個更一般的腳本:

<script language="JavaScript">
var xmlDso;
function load(xmlFile, objName) {
eval(''xmlDso=''+objName+''.XMLDocument'');
xmlDso.load(xmlFile);
}
</script>
Now, to load any XML file use:
load("SomeXMLFile.xml","anyXmlDsoObject");(csdn) (出處:PConline)
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久久久久久久久亚洲 | 国产精品高潮99久久久久久久 | 中文字幕在线观看成人 | 久久久久久久久久久亚洲 | 欧美精品一区二区三区四区 | 中文字幕亚洲一区二区三区 | 亚洲小视频在线观看,com | 91重口视频 | 美女av在线免费观看 | 中国女警察一级毛片视频 | av成人免费在线观看 | 亚洲啊v在线观看 | 综合网日日天干夜夜久久 | 一区二区三区国产在线 | 久国产 | 国产精品观看在线亚洲人成网 | 嗯~啊~弄嗯~啊h高潮视频 | 国产高潮好爽好大受不了了 | 欧美国产精品一区二区 | 欧美人与zoxxxx另类9 | 国产又粗又爽又深的免费视频 | 国产一级淫片在线观看 | 91在线色 | 在线观看免费视频麻豆 | 久色伊人 | 亚洲一区二区在线 | 蜜桃视频最新网址 | 黄色av网站免费 | 啪啪毛片| 日韩美女电影 | wwwxxx视频 | 一级片九九| 啊~用cao嗯力cao烂我视频 | 电影av在线 | av国产免费 | 国产精品久久久久久久久久大牛 | 日本黄色不卡视频 | 久久国产乱子伦精品 | 一本色道久久综合狠狠躁篇适合什么人看 | 羞羞的视频 | vidz 98hd|