| XML创建可排序、分页的数据显示页面 |
|
(加入日期:2002-6-1 点击数:2315) 【对此文发表评论】 【编程爱好者论坛】 【保存文章至硬盘】 【打印文章】 |
|
在Web开发中,我们经常会遇到分页显示和排序数据记录集的情况,这在服务器端使用服务器端的代码和数据库技术是件很轻松的事情,比如:ASP、PHP、JSP等。然而,如果要在客户端显示多条记录并且排序是一件很令人头疼的事情。下面,我们利用Extensible Markup Language(XML,可扩展标记语言)和Extensible Stylesheet Language Transformations(XSLT,可扩展样式单语言转换),并结合XML Path Language(XPath,XML路径语言),只需要编写简单的代码,就可轻松实现。这种方法避免了与服务器频繁打交道的过程,节省了数据显示的时间,浏览者无须等待就可以看到结果,也可以减少服务器的负担。另外。由于XML和XSLT技术,使数据存储和数据显示分离,还可以让我们的代码能够重复利用,大大减轻了程序员编写代码的负担。 下面,我们一步一步地来实现我们的功能。 首先:创建XSLT XSLT样式单的第一行标明该XML所遵照的XML规范版本,然后是标明该样式单使用的名称空间,这里,我们以XSL规范的正式版本来进行编写,而不采用XSL的草案的写法: <xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl"> 注意:两者在功能和写法上有很大的差异。 <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 接下来,我们定义XSLT里的模板标记: <xsl:template match="/"> <xsl:apply-templates select="/客户关系表"/> </xsl:template> <xsl:template match="/客户关系表"></xsl:template> 我们把要显示的样式写到模板里面。我们使用HTML的数据岛来存放我们的数据,这些数据可以利用SQL Server 2000的XML查询来得到,对于不支持XML的数据库,我们可以自己编写组件把数据转换成XML格式,然后在放到数据岛里。在HTML里使用数据岛有两种方法: 一是直接嵌入数据,如下所示: <XML id='Data'> <客户关系表> <客户>每条数据</客户> </客户关系表> </XML> 二是通过SRC属性引用外部文件,如下所示: <XML id='Data' src='Data.xml'></XML> 要使用数据岛里的数据,必须通过id名来引用它,当然,由于XSLT文件也是XML格式文件的一种,也可以通过这种方法来实现: <XML id='Style' src='Style.xsl'></XML> 我们在页面中加入标记DIV来显示我们的转换的结果: <div >孟宪会之精彩世界</a>】</td> </tr> </table> </body> </HTML> 把上面的内容拷贝到本地计算机上,分别保存为相应的文件,在IE5+和XML3.0+的环境下即可看到效果! |
相关文章: