登陆 免费注册 提交网站
站长资讯 >> 站长学院 >> 网络编程
 2008-09-07 12:08浏览: 4070 次

使用javascript+xml技术实现分页浏览(一)

基于web的技术中,分页是一个老的不能再老的,但大家津津乐道的问题,随着xml技术的日渐应用,把xml应用到分页当中,也是一种可能,当然网上的教程很多,当我都是看得稀里糊涂,索性自己写一个,与大家分享、指正。

共有两个文件tmh.htm & tt.xml

源代码如下:

[code]tmh.htm

___________________________________________________

New Document

//****************变量相关定义**************

//* 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="

";

//检索的记录数

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="前一页";

return thePage;

}

function NextPage(page)

{

thePage="后一页";

if(page

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

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

getContent();

BodyText="";

}

function selectPage()

{

var sp;

sp="";

sp=sp+"";

for (t=0;t<=pagesNumber;t++)

{

sp=sp+"";

}

sp=sp+""

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

{

 

BodyText=BodyText+"

";

for (m=0;m<=colNum-1;m++)

{ 

mName=column.item(m).tagName;

BodyText=BodyText+("

");

}

BodyText=BodyText+"

"

mm="";

}

showhtml.innerHTML=BodyText+"

姓名图标IP地址email日期
"+xmlDoc.getElementsByTagName(mName).item(n).text+"
"+pageBar(page);

BodyText=""

}

if (maxNum==0)

{

document.write("没有检索到合适的人才信息")

}

else

{

getContent()

}

[/code]

网站首页 - 关于我们 - 联系我们 - 友情链接 - 帮助中心
Copyright ©2007-2022 www.Aisila.com All Rights Reserved
苏ICP备20008864号-4