本js实现翻页是我现在初学js弄着完所写,很老土但很实用,兼容各种浏览器(已测试!),可以适用于从数据库读取数据之后对其进行分页。
以下是用到的js,页面引用为:<script type="text/javascript" src="js/page.js"></script>
// JavaScript Document
var curPage=1;//记录当前页码
var pageCount=12;//默认每页显示12条
function GetId(_obj) {//获取所显示的记录
return document.getElementById(_obj);
}
function ChangePage(){
var pageNums=0;
var recordNum=GetId("tabe").getElementsByTagName('tr').length-2;//获取当前共有多少条记录总数,因有第一条栏目名称和最后一条是翻页,所以要减去2
var pageNumsOld=parseInt(recordNum%pageCount);
var allRecords=GetId("tabe").getElementsByTagName('tr');
if(pageNumsOld!=0)
{
pageNums=parseInt(parseInt(recordNum)/pageCount)+1;
}
else{
pageNums=parseInt(parseInt(recordNum)/pageCount);
}
if((curPage==1)&&(recordNum>=pageCount))//默认显示第一页
{
var allRecords=GetId("tabe").getElementsByTagName('tr');//获取所有的内容
for(var i=recordNum; i>pageCount; i--) //第一页显示前12条,12条之后的隐藏
{
allRecords[i].className="thidden";
}
}
document.getElementById('pagenum').innerHTML=pageNums;//给总页数以及当前页码赋值
document.getElementById('pagecount').innerHTML=recordNum;
document.getElementById('showPage').value=1;//默认为第一页
}
function FirstPage()//首页
{
var pageNums=0;
var recordNum=GetId("tabe").getElementsByTagName('tr').length-2;//获取当前共有多少条记录总数,因有第一条栏目名称和最后一条是翻页,所以要减去2
var pageNumsOld=parseInt(recordNum%pageCount);
var allRecords=GetId("tabe").getElementsByTagName('tr');
if(pageNumsOld!=0)
{
pageNums=parseInt(parseInt(recordNum)/pageCount)+1;
}
else{
pageNums=parseInt(parseInt(recordNum)/pageCount);
}
var allRecords=GetId("tabe").getElementsByTagName('tr');
for(var i=recordNum; i>pageCount; i--)
{
allRecords[i].className="thidden";
}
for(var i=0; i<=pageCount; i++)
{
allRecords[i].className="tshow";
}
curPage=1;
document.getElementById('showPage').value=1;
}
function LastPage()//尾页
{
var pageNums=0;
var recordNum=GetId("tabe").getElementsByTagName('tr').length-2;//获取当前共有多少条记录总数,因有第一条栏目名称和最后一条是翻页,所以要减去2
var pageNumsOld=parseInt(recordNum%pageCount);
var allRecords=GetId("tabe").getElementsByTagName('tr');
if(pageNumsOld!=0)
{
pageNums=parseInt(parseInt(recordNum)/pageCount)+1;
if(recordNum>pageCount)
{
for(var i=recordNum; i>recordNum%pageCount; i--) //第一页显示12条
{
allRecords[i].className="tshow";
}
for(var i=recordNum-(recordNum%pageCount); i>0; i--) //第一页显示12条
{
allRecords[i].className="thidden";
}
}
}
else{
pageNums=parseInt(parseInt(recordNum)/pageCount);
if(recordNum>pageCount)
{
for(var i=recordNum; i>recordNum-pageCount; i--) //第一页显示12条
{
allRecords[i].className="tshow";
}
for(var i=recordNum-pageCount; i>0; i--) //第一页显示12条
{
allRecords[i].className="thidden";
}
}
}
curPage=pageNums;
document.getElementById('showPage').value=pageNums;
}
function PerPage()//上一页
{
var pageNums=0;
var recordNum=GetId("tabe").getElementsByTagName('tr').length-2;//获取当前共有多少条记录总数,因有第一条栏目名称和最后一条是翻页,所以要减去2
var pageNumsOld=parseInt(recordNum%pageCount);
var allRecords=GetId("tabe").getElementsByTagName('tr');
va