XML数据岛(XML Data Island)

[入库:2005年8月18日] [更新:2007年3月25日]

本文简介:选择自 net_lover 的 blog

xml数据岛(xml data island)

  在microsoft internet explorer 5.0及以后的版本里里,你可以利用xml元素来创建数据岛,数据岛就是被html页面引用或包含的xml数据,xml数据可以包含在html文件内,也可以包含在某外部文件内。
  利用xml元素可以让我们免除了编写脚本的麻烦,如果用户由于安全的考虑不允许执行脚本的话,<object>标记将不能正常工作,那是因为,要初始化xml,必须编写脚本。

行内xml

  行内xml包含在标记<xml>和</xml>之间,例如:

<xml id="xmldata">
<?xml version="1.0" ?>
<trees>
<tree>
<name>小龙女</name>
<height unit="cm">180</height>
</tree>
<tree>
<name>大侠杨过</name>
<height unit="cmt">178</height>
</tree>
</trees>
</xml>

引用xml文件

  使用<xml>标记的src属性来引用外部的xml文件,src属性可以引用本地的文件,也可以指定一个url,url指向外部的服务器,数据可以从数个不同的服务器综合在一起。下面例子的src属性引用到本地的xml文件。

    <xml id="xmldata" src="xmldata.xml"></xml>

其中的文件xmldata.xml里含有xml数据。
下面的例子引用一个远程服务器上的xml文件:

    <xml id="xmldata" src="http://lucky.myrice.com/exam/xmldata.xml"></xml>

从数据岛读取数据

  从数据岛读取数据是利用<xml>元素的id属性来完成的。通过能够接收数据的html标记(把数据绑定到该html),我们可以进行格式化或显示数据岛里的数据。下面的例子显示元素为<meeting>里各xml子元素的内容:

<html><head><title></title></head>
<body>
<xml id="xmlmeetings">
<?xml version="1.0" ?>
<meetings>
<meeting>
<date>1/1/99</date>
<time>9:00</time>
<location>104号房间</location>
</meeting>
<meeting>
<date>2/1/99</date>
<time>13:00</time>
<location>34号房间</location>
</meeting>
<meeting>
<date>3/1/99</date>
<time>14:30</time>
<location>20号房间</location>
</meeting>
</meetings>
</xml>
<table datasrc="#xmlmeetings">
<tr>
<td><div datafld="date"></div></td>
<td><div datafld="time"></div></td>
<td><div datafld="location"></div></td>
</tr>
</table>
</body>
</html>

  标记<table>利用datasrc属性引用行内xml,datasrc属性实际上是通过在要处理的xml元素的id属性的前面加上#来实现的。由于td元素不能绑定数据,因此,必须找一个能够绑定数据的元素,在上面的例子里,我们用div元素的dadafld属性来绑定到要显示的xml元素,例如:datafld="date"就把xml元素里<date>里的值绑定到了div。
  当xml元素被浏览器读入后,对每对<meeting></meeting>标记创建了不同的行。

本文关键:XML数据岛(XML Data Island)
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top