新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   >>中国XML论坛<<     W3CHINA.ORG讨论区     计算机科学论坛     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> XML网站展示,XML源代码,XML编程示例。 本版仅接受原创、转贴、网站展示,具体的技术交流请前往各相关版块。
    [返回] 中文XML论坛 - 专业的XML技术讨论区XML.ORG.CN讨论区 - XML技术『 XML源码及示例(仅原创和转载) 』 → [原创]为客户端分页显示加上动态排序 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 3926 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: [原创]为客户端分页显示加上动态排序 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     acer2 帅哥哟,离线,有人找我吗?
      
      
      等级:大一(高数修炼中)
      文章:7
      积分:108
      门派:XML.ORG.CN
      注册:2004/7/28

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给acer2发送一个短消息 把acer2加入好友 查看acer2的个人资料 搜索acer2在『 XML源码及示例(仅原创和转载) 』的所有贴子 引用回复这个贴子 回复这个贴子 查看acer2的博客楼主
    发贴心情 [原创]为客户端分页显示加上动态排序

    前几天写了一个客户端分页显示的小程序,可惜的是没有本地排序的功能,我想用Recordset的Sort功能却不能成功,在网上找到了一些排序分页显示的例子,由于自己水平有限,看得很吃力,也终于有点明白,实在太长了。针对我写的客户端分页程序,我也用另一种思路写了个能动态本地分页的例子,供大家批评指正。

    这个程序的主要思路是:利用XSL格式文件的排序功能生成一个新数据岛,此数据岛就是我们想得到的已排序数据,然后用RECORDSET方法显示它们。
    ***************************************************************
    xml文件:(略,我只用了三个字段的)

    XSL文件:(GS.XSL)
    <?xml version="1.0" encoding="GB2312"?>
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">

    <xsl:template match="/">

    <xsl:apply-templates select="/*"></xsl:apply-templates>


    </xsl:template>

    <xsl:template match="/*">
    <数据>
       <xsl:for-each select="./*" order-by="./*[1]">
        <test>
         <字段1><xsl:value-of select="./*[0]" /></字段1>
         <字段2><xsl:value-of select="./*[1]" /></字段2>
         <字段3><xsl:value-of select="./*[2]" /></字段3>
        </test>
       </xsl:for-each>
    </数据>
    </xsl:template>

    </xsl:stylesheet>

    **************************************************
    主程序:softpage.htm
    <html>

    <head>
    <script language=vbscript>

       function zzxmlsj()  '以样式表形式重新装载XML数据
         sj="<?xml version='1.0' encoding='GB2312'?>"&data.TransformNode(style.DocumentElement)
         sjd.loadXML sj
       end function

       function sort(field) '排序
            Style.XMLDocument.selectSingleNode("//@ order-by").value=field
            zzxmlsj()
            xyy(1)
       end function

       function xyy(ys) '分页显示
          sjd.recordset.movefirst
          if ys<1 then ys=1 '过头
          if ys>=sjd.recordset.pageCount then ys=sjd.recordset.pageCount-1 '过尾
          sjd.recordset.AbsolutePage=ys 
          xs="<table border=1>"
          xs=xs&"<thead>"
          xs=xs&"<td><a href=# onclick=sort('./*[0]')>字段1</a></td>"
          xs=xs&"<td><a href=# onclick=sort('./*[1]')>字段2</a></td>"
          xs=xs&"<td><a href=# onclick=sort('-./*[2]')>字段3</a></td>"
          xs=xs&"</thead>"
          for i=1 to sjd.recordset.pagesize
                      xs=xs&"<tr>"
                      xs=xs&"<td>"&sjd.recordset(0).value&"</td>"
                      xs=xs&"<td>"&sjd.recordset(1).value&"</td>"
                      xs=xs&"<td>"&sjd.recordset(2).value&"</td>"
                      if sjd.recordset.eof then exit for
                      sjd.recordset.movenext
                      xs=xs&"</tr>"
          next
          xs=xs&"</table>"
          xs=xs&"<input type=button onclick=xyy(1) value='首页'></input>"
          xs=xs&"<input type=button onclick=xyy("& ys-1 & ") value='上页'></input>"
          xs=xs&"<input type=button onclick=xyy("& ys+1 & ") value='下页'></input>"
          xs=xs&"<input type=button onclick=xyy("& sjd.recordset.pageCount-1 & ") value='末页'></input>"
          xs=xs&"<p>共"&sjd.recordset.Pagecount-1&"页,"&"第"&sjd.recordset.AbsolutePage-1&"页</p>"
          disp.innerHTML=xs '更新显示
       end function

    </script>
    </head>

    <body>

    <XML ID="data" src="vvv.xml" />
    <XML ID="style" src="gs.xsl" />
    <xml id="sjd"></xml>

    <script>
    zzxmlsj()
    </script>

    <div id="disp"></div>

    <script language="vbscript">
       xyy 1 '第一次显示
    </script>

    </body>
    </html>

    在网上的话(ASP)一定要用#include file方法包含数据岛,否则出错。
    样式表命名空间必须用<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">,否则order-by无效。


       收藏   分享  
    顶(0)
      




    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/3/24 21:15:00
     
     wantstudio 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:4
      积分:81
      门派:XML.ORG.CN
      注册:2004/9/17

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给wantstudio发送一个短消息 把wantstudio加入好友 查看wantstudio的个人资料 搜索wantstudio在『 XML源码及示例(仅原创和转载) 』的所有贴子 引用回复这个贴子 回复这个贴子 查看wantstudio的博客2
    发贴心情 
    大哥,怎么有错啊
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/4/13 8:35:00
     
     yeriwei 帅哥哟,离线,有人找我吗?
      
      
      等级:大二(研究汇编)
      文章:37
      积分:232
      门派:XML.ORG.CN
      注册:2004/8/20

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给yeriwei发送一个短消息 把yeriwei加入好友 查看yeriwei的个人资料 搜索yeriwei在『 XML源码及示例(仅原创和转载) 』的所有贴子 引用回复这个贴子 回复这个贴子 查看yeriwei的博客3
    发贴心情 
    局限性...赏析之用.无实际应用意义.
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/4/13 11:11:00
     
     acer2 帅哥哟,离线,有人找我吗?
      
      
      等级:大一(高数修炼中)
      文章:7
      积分:108
      门派:XML.ORG.CN
      注册:2004/7/28

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给acer2发送一个短消息 把acer2加入好友 查看acer2的个人资料 搜索acer2在『 XML源码及示例(仅原创和转载) 』的所有贴子 引用回复这个贴子 回复这个贴子 查看acer2的博客4
    发贴心情 
    有错原因可能是你没有将数据岛嵌入本地网页中(在ASP里不能用scr="XXX"的方式,应该用INCLUDE)。
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/4/15 18:20:00
     
     GoogleAdSense
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 XML源码及示例(仅原创和转载) 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2024/5/13 21:34:13

    本主题贴数4,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    93.750ms