XML卷之实战锦囊(3):动态分页

动机:
为了方便用户查看大批量数据,我们会用到动态分页,因此分页功能是我们在网站上见过的最普遍也是最常用的一个功能模块了。而以往的信息分页都是连接到数据库的,每一次点击都必须要后台数据库的支持。这样不但服务器的负担加重,而且严重的影响用户浏览的速度.
试想,如果把分页的功能放到客户端,那会产生什么样的效果呢?呵呵,看看下面的设计吧! 。

材料:
XML卷之动态分页
有2个文件:pages.xml 和 pages.xsl

作用:
把分页的功能放到客户端。在不刷新页面的情况下对数据进行过滤筛选,有效的提高浏览数据功能的效率。 
效果:
浏览这里 
代码:
pages.xml

      1    Sailflying    一个简单的分页    2002-1-11 17:35:33    XML专题        2    flyingbird    嫁给你,是要你疼的    2001-09-06 12:45:51    灌水精华        3    苛子    正则表达式在UBB论坛中的应用    2001-11-23 21:02:16    Web 编程精华        4    太乙郎    年末经典分舵聚会完全手册 v0.1    2000-12-08 10:22:48    论坛灌水区        5    mmkk    Asp错误信息总汇    2001-10-13 16:39:05    javascript脚本  

登录后复制

 

pages.xsl 

 XML卷之实战锦囊(3):动态分页body,BlueIdea,team,blue_ID,blue_name,blue_text,blue_time,blue_class{ font: 12px "宋体", "Arial", "Times New Roman"; } table { font-size: 12px; border: 0px double; border-color: #99CC99 #99CC99 #CCCCCC #CCCCCC; cellpadding:3;cellspacing:3; bgcolor:#eeeeee; text-decoration: blink} span { font-size: 12px; color: red; }.keybutton { cursor:hand; font-size: 12px; color: #003300; background: #ffffff; border: 0px solid;}  <![CDATA[ var OnePageNum=2; var PageNum=1; var XMLPageNum=1; function pages(Num) { stylesheet=document.XSLDocument; source=document.XMLDocument; nodes=source.documentElement.childNodes; len=nodes.length; for(i=1;i1) PageNum -=1;} if (Num=="next") {if (PageNum="+firstNum+" & childnumber(this)  

XML卷之实战锦囊(3):动态分页

     
    
 
 
 
编号姓名主题发表时间归类
=1 & childnumber(this) 

登录后复制

 

讲解:
1)search.xml 是数据文件,相信大家都不会有问题。
2)search.xsl 是格式文件,有几个地方要注意。

(1)脚本中:

nodes=source.documentElement.childNodes;

登录后复制

作用是:找到所有的节点。nodes.length就是符合条件的总节点数

sortField=document.XSLDocument.selectSingleNode("//@expr");

登录后复制

作用是:找到有属性为expr的第一个节点,因此它对应的节点就是

=1 & childnumber(this)

登录后复制登录后复制

因此在初次onLoad的时候expr的value值是

childnumber(this)=2

登录后复制

关于 > 大家可以在XML的书中找到其它的一些。

 

参数说明:
OnePageNum:每页显示的数据数
PageNum:当前页数
XMLPageNum:总页数
firstNum:当前页的第一条数据值
lastNum:当前页的最后一条数据值

(2)文本中:

=1 & childnumber(this)

登录后复制登录后复制

在分页中我们需要输出合适的数据,,因此我们用一个 if 判断条件来控制。
在初始的时候我们要求只输出最前的两个节点的数值。

childnumber(this)
作用:返回当前节点在它的上级节点列表中的编号,列表中的第一个节点默认编号为1。
在分页中我们就是根据节点的编号来判断它属于第几页。
expr
不知道大家发现没有,前两次我们用到的都是 test ,可这个我们用的却是expr。
它们之间有一定的区别,用法也不相同。
expr ── 脚本语言表达式,计算结果为”真”或”假”;如果结果为”真”,且通过test,则在输出中显示其中内容(可省略此项属性)。
test ── 源数据测试条件。

登录后复制

作用是让数据回到最前一页。其它按钮的作用类似。

 

补充一点: XML例子文件的使用方法

1)将每个例子里的两个文件按照文件名分别保存。
2)用浏览器浏览XML文件即可。这是你会看到效果,应该不错吧! 

后记:
呵呵,可以增加动态排序后,再分页的功能。再把列表数变为可设置。发挥你的思维,让这些功能更加完美。大家可以研究出更好的方法来实现分页功能。互相探讨,不亦乐乎! 

以上就是XML卷之实战锦囊(3):动态分页的内容,更多相关内容请关注PHP中文网(www.php.cn)!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2420527.html

(0)
上一篇 2025年3月3日 03:31:15
下一篇 2025年2月27日 15:35:58

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • XML卷之实战锦囊(4):选单连动

    动机: 现在我们做个在ie里应用xml的一个小例子:解决双下拉选单的连动问题。大家最常见的可能就是选取省份后改变城市选项的例子了,那我们就来尝试着用xml来完成吧。 以前介绍的一些功能我是直接用XML+XSL文件来完成的,大家可能还不是很熟…

    编程技术 2025年3月3日
    200
  • 走近XML(1)

    XML——可扩展标记语言 标记语言是什么? 文档中任何不想被打印输出的部分(不是真正的文档的内容,就像读课本做注释一样)。 标记的作用是什么? 传递了关于文档本身以外的额外信息。比如:标记文档的某部分该如何显示,某部分是什么意思等。 XML…

    2025年3月3日
    200
  • XML(2)通过XmlDocument与XDocument方式写入XML

    登录后复制 在.net中通过xmldocument与xdocument方式也可以写入xml其中xmldocument是原来支持的标准的xml写入类,现在扩展的xdocument类使用更加方便,下面用xdocument类来写入一个xml文件。…

    2025年3月3日
    200
  • XML(3)XDocument与XmlDocument递归读取xml文件

    通过xdocument与xmldocument将xml文件读取到treeview上,其中主要是用递归方式将xml下的元素都加载到treeview控件上面。 XDocument 步骤: (1)加载xml文件 (2)获取根节点 (3)将xml根…

    编程技术 2025年3月3日
    200
  • XML(4)XDocument和XmlDocument搜索指定的节点

    XmlDocument             StringBuilder str = new StringBuilder();                        XmlDocument document = new XmlDo…

    编程技术 2025年3月3日
    200
  • XML(5)序列化写入xml文件

    通过.net里面的xml序列化器实现将内容写入到xml文件中。这里介绍list集合的序列化。 首先序列化是什么呢?有什么作用呢? 序列化 序列化 (Serialization)将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间,…

    2025年3月3日
    200
  • XML(6)自己写一个xml序列化器

    上篇已经介绍到了通过序列化器将内容写入到xml文件中。这里还是用person类来写。 1、首先写一个person对象 person p=new person() {Name = “istari”, Age = 22, Email = “10…

    编程技术 2025年3月3日
    200
  • XML 树结构

    一个 XML 文档实例 xml 文档使用简单的具有自我描述性的语法: ToveJaniReminderDon’t forget me this weekend! 登录后复制 第一行是 XML 声明。它定义 XML 的版本(1.0)和所使用的…

    2025年3月3日
    100
  • js字符串转换成xml并使用

             转载请注明来源:js字符串转换成xml并使用   print?//字符串转化为xml   function toXmlDom(source){     var xmlDoc = null;     if (window.A…

    2025年3月3日
    200
  • android dom 解析xml方式

    首先自己创建一个xml文件:domtest.xml 语文80英语89语文90英语99语文85英语95语文80英语90 登录后复制 解析出来的结果显示如下图: 下面来分析源代码: /** * 用dom方式 解析xml 文件 * @param …

    2025年3月3日
    200

发表回复

登录后才能评论