HTML中不仅含有大量的格式化语句,还到处充斥着内容数据,让人看着实在是头大。美工人员在调整界面布局时,可能会不经意的修改了内容数据;业面内容维护人员在维护数据时往往也无意的弄乱了业面布局代码。
于是乎,人们开始有意识的避免这种混乱局势。利用XML进行数据描述,在HTML中仅保留页面布局代码,这样就使得数据在界面分开,再也不会因为修改布局而丢失内容数据;亦不会在维护数据时改变页面布局。
数据与界面被分离开了,我们似乎还需要某种手段再让它们有机的结合起来。XML数据配合不同的HTML,可以给客户不同的数据浏览方式。XML数据岛就可以将XML中的数据很自然的引入到HTML中,而无需编写繁琐的代码。
下面我用实例向大家阐述。
假设我们有一个名为“Book.xml”的XML文件存图书信息,内容如下。
<?xmlversion="1.0"encoding="gb2312"?> <books> <bookid="0001"bookcategory="文艺"amount="150"remain="80"discount="8.7"> <title>三国演义</title> <author>罗贯中</author> <publisher>文艺出版社</publisher> <isbn>0-765-58007-8</isbn> <price>80</price> </book> <bookid="0002"bookcategory="文艺"amount="100"remain="70"discount="9.8"> <title>红楼梦</title> <author>曹雪芹</author> <publisher>三秦出版社</publisher> <isbn>0-765-58007-9</isbn> <price>22</price> </book> <bookid="0003"bookcategory="文艺"amount="120"remain="60"discount="8.5"> <title>西游记(上下册)</title> <author>吴承恩</author> <publisher>人民文学出版社</publisher> <isbn>0-765-58007-3</isbn> <price>40.12</price> </book> </books>
每个图书结点(Book)都有分类,数据,余量,折扣四个属性,还有书名,作者,出版社,书号和价格五个子元素。这里仅仅是为了给大家讲述如何使用XML数据岛,故数据结构定义的很简单,数据量也不是很大。
我们想在HTML中以表格的形式,将XML中的内容显示出来。我们现在开始动手编写HTML文件。首先要在HTML中构造一个表格,用来显示图书的信息。这部分想必大家都很梳洗,我就不细讲了,我们着重的讲一下如何定义XML数据导,以及如何将数据表HTML表格进行绑定。
XML数据岛,顾名思义,它充当着数据源的作用,就是引入存储数据的XML文件,并为其分配一个ID,方便在HTML中引用。定义代码如下:
<xmlid="XMLData"src="Test07.xml"></xml>
一般性的,我们会将这句代码写在9c5594a5fc8d2e506f1a8147102c836b标记中。ID是其标识符,方便在HTML文件其他地方引用,src是XML数据文件的位置,可以是相对位置,也可以是一个有效的URL。在此例中是其值是“Test07.xml”,表示这是与该HTML文件存放在同一位置的一个名为“Test07.xml”的文件。
<tableid="tblbooks"datasrc="#XMLData"border=1datapagesize=2width="100%"> <thead> <thstyle="font-style:blod">书名</th> <thstyle="font-style:blod">类别</th> <thstyle="font-style:blod">书号</th> <thstyle="font-style:blod">作者</th> <thstyle="font-style:blod">出版社</th> <thstyle="font-style:blod">定价</th> <thstyle="font-style:blod">数量</th> <thstyle="font-style:blod">余量</th> </thead> <tr> <td><spandatafld="title"></span></td> <td><spandatafld="bookcategory"></span></td> <td><spandatafld="isbn"></span></td> <td><spandatafld="author"></span></td> <td><spandatafld="publisher"></span></td> <td><spandatafld="price"></span></td> <td><spandatafld="amount"></span></td> <td><spandatafld="remain"></span></td> </tr> </table>
大家可以发现,在f5d188ed2c074f8b944552db028f98a1标记中,我们加入了datasrc="#XMLData",表示该表格的数据来自一个名为“XMLData”的数据岛,特别需要注意的是,在引用数据导时一定要用“#”加上数据岛ID。
同时需要在每个单元格b6c5a531a458a2e790c1fd6421739d1c标记中放置一个45a2772a6b6107b401db3c9b82c049c2标记并指定字段,如b6c5a531a458a2e790c1fd6421739d1cf6bdd09011cdfa81412460f2e0844e2654bdf357c58b8a65c66d7c19c8e4d114b90dd5946f0946207856a8a37f441edf,表示这个标记与title字段进行绑定,该字段值会自动的填充到45a2772a6b6107b401db3c9b82c049c2标记中。
以上是XML数据岛之数据绑定实例详解的详细内容。更多信息请关注PHP中文网其他相关文章!