使用javascript+xml实现分页_XHTML/WEB_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

使用javascript+xml实现分页

作者:黑客防线网安XML教程基地 来源:黑客防线网安XML教程基地 浏览次数:0

本篇关键词:实现使用 '
黑客防线网安网讯:  基于web的技术中,分页是一个老的不能再老的,但大家津津乐道的问题,随着xml技术的日渐应用,把xml应用到分页当中,也是一种可能,当然网上的教程很多,当我都是看得稀里糊涂,索性自己...

  基于web的技术中分页是一个老的不能再老的但大家津津乐道的问题,随着xml技术的日渐应用,把xml应用到分页当中,也是一种可能,当然网上的教程很多,当我都是看得稀里糊涂,索性自己写一个,与大家分享、指正
  共有两个文件tmh.htm & tt.xml
  源代码如下:
  tmh.htm
  ___________________________________________________
  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
  <HTML>
  <HEAD>
  <TITLE> New Document </TITLE>
  <META NAME="Generator" CONTENT="EditPlus">
  <META NAME="Author" CONTENT="">
  <META NAME="Keywords" CONTENT="">
  <META NAME="Description" CONTENT="">
  <link rel="stylesheet" href="../website.css" type="text/css">
  </HEAD>
  <BODY>
  
  <script language="javascript">
  //****************变量相关定义**************
  //*             author:海仔               *
  //*         Email:rautinee@21cn.com      *
  //*本程序可自由传播使用,但请务必保留此信息    *
  //****************************************
  var pagenum=4; //每页显示几条信息
  var page=0 ;
  var contpage ;
  var BodyText="";
  var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
  var mode="member";
  var toolBar;
  xmlDoc.async="false"
  xmlDoc.load("tt.xml")
  //***************这个地方是你根据实际取得的字段名称来改了
  header="<TABLE border=1><tr><td>姓名</td><td>图标</td><td>IP地址</td><td>email</td><td></td><td>日期</td><td></td><td></td></tr>";
  
  //检索的记录数
  maxNum = xmlDoc.getElementsByTagName(mode).length
      //每条记录的列数
      column=xmlDoc.getElementsByTagName(mode).item(0).childNodes
      //每条记录的列数
      colNum=column.length
      //页数
      pagesNumber=Math.ceil(maxNum/pagenum)-1;
      pagesNumber2=Math.ceil(maxNum/pagenum);
  //上一个页面
  function UpPage(page)
  {
      thePage="前一页";
      if(page+1>1) thePage="<A HREF='#' onclick='Javascript:return UpPageGo()'>前一页</A>";
      return thePage;
  }
  function NextPage(page)
  {
      thePage="后一页";
      if(page<pagesNumber) thePage="<A HREF='#' onclick='Javascript:return NextPageGo()'>后一页</A>";
      return thePage;
  }
  
  function UpPageGo(){
  
  if(page>0) page--;
      getContent();
      BodyText="";
  
  }
  //当前的页数
  function currentPage()
  {
      var cp;
      cp="当前是第 "+(page+1)+" 页";
      return cp;
  }
  //总共的页数
  function allPage()
  {
      var ap;
      ap='总共 '+(pagesNumber+1)+' 页';
      return ap
  }
  function NextPageGo()
  {
  if (page<pagesNumber) page++;
  
      getContent();
      BodyText="";
  }
  
  //显示分页状态栏
  function pageBar(page)
  {
      var pb;
      pb=UpPage(page)+"  "+NextPage(page)+"  "+currentPage()+"  "+allPage()+selectPage();
      return pb;
  }
  function changePage(tpage)
  {    
  
      page=tpage
      if(page>=0) page--;
      if (page<pagesNumber) page++;
      getContent();
      BodyText="";
  }
  function selectPage()
  {
      var sp;
      sp="<select name='hehe' onChange='javascript:changePage(this.options[this.selectedIndex].value)'>";
      //sp="<select name='hehe' onChange='alert(this.options[this.selectedIndex].value)'>";
      sp=sp+"<option value=''></option>";
      for (t=0;t<=pagesNumber;t++)
      {
          sp=sp+"<option value='"+t+"'>"+(t+1)+"</option>";
      }
      sp=sp+"</select>"
      return sp;
  }
  
  function getContent()
  {
  
          if (!page) page=0;
          n=page*pagenum;
          endNum=(page+1)*pagenum;
          if (endNum>maxNum) endNum=maxNum;
          BodyText=header+BodyText;
          for (;n<endNum;n++)
          {
              
              BodyText=BodyText+"<TR>";
                  for (m=0;m<=colNum-1;m++)
                  {    
                      mName=column.item(m).tagName;
                      BodyText=BodyText+("<TD>"+xmlDoc.getElementsByTagName(mName).item(n).text+"</TD>");
                  }
              BodyText=BodyText+"</TR>"
              mm="";
              }
              showhtml.innerHTML=BodyText+"</table>"+pageBar(page);
  
  BodyText=""
  }
  </script>
  
  <div id="showhtml"></div>
  <script>
  if (maxNum==0)
          {
              document.write("没有检索到合适的人才信息")
          }
      else
          {
              getContent()
          }
  </script>
  
  </BODY>
  </HTML>
  
  //下面是tt.xml的代码
  
  
  
  
  <?xml version="1.0" encoding="GB2312"?>
  <rautinee>
  
  <member id='1'>
  <name>海仔</name>
  <loginName>rautinee</loginName>
  <email>rautinee@btamail.net.cn</email></member>
  
  <member id='2'>
  <name>刚强</name>
  <loginName>hehe</loginName>
  <email>rautinee@chinamanagers.com</email></member>
  
  <member id='3'>
  <name>金华刚</name>
  <loginName>nature_it</loginName>
  <email>rautinee_sea@hotmail.com</email></member>
  
  <member id='4'>
  <name>的简强</name>
  <loginName>tank</loginName>
  <email>tank@163.com</email></member>
  
  <member id='7'>
  <name>合资</name>
  <loginName>kaka</loginName>
  <email>kaka@eyou.com</email></member>
  
  <member id='6'>
  <name>加个人</name>
  <loginName>apple</loginName>
  <email>apple@163.com</email></member>
  
  <member id='8'>
  <name>null</name>
  <loginName>sunny</loginName>
  <email>rautinee@eyou.com</email></member>
  
  <member id='10'>
  <name>宝贝</name>
  <loginName>index</loginName>
  <email>rautinee@21cn.com</email></member>
  
  <member id='12'>
  <name>null</name>
  <loginName>login</loginName>
  <email>webmaster@chinamanagers.com</email></member>
  
  <member id='13'>
  <name>jiang</name>
  <loginName>123</loginName>
  <email>japing@chianmanagers.com</email></member>
  
  <member id='14'>
  <name>null</name>
  <loginName>world</loginName>
  <email>rautinee@21cn.com</email></member>
  
  <member id='15'>
  <name>null</name>
  <loginName>swallow</loginName>
  <email>swallow@chinamanagers.com</email></member>
  
  <member id='16'>
  <name>魏格</name>
  <loginName>hotmail</loginName>
  <email>rautinee_sea@hotmail.com</email></member>
  
  <member id='17'>
  <name>null</name>
  <loginName>wrong</loginName>
  <email>wrong@chinamanagers.com</email></member>
  
  <member id='18'>
  <name>null</name>
  <loginName>leah</loginName>
  <email>leah@chinamanagers.com</email></member>
  
  <member id='19'>
  <name>null</name>
  <loginName>ttth</loginName>
  <email>rautinee@21cn.com</email></member>
  
  </rautinee>
  目前好像是只支持>IE5.0
  如果你有什么好的方法和改进,请来信通知我,谢谢
  
  ok ,just enjoy it ,and good luck

    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-15979-1.html
网站维护教程更新时间:2012-04-06 01:02:41  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer