效率比较高的分页程序,插入网页中就可以使用,只需将已有代码中的strsql(数据库查询语句),字段名称,字段名替换为实际中使用的名称就可以了,还可以自行扩充一些样式、操作方面的代码
<script language="javascript" type="text/javascript">
<!--
function page()
{
var pagenum=0
var c
pagenum=document.formpage.textpage.value;
//alert(document._more.go.value.length);
for (i=1;i<=document.formpage.textpage.value.length;i=i+1)
{
c=document.formpage.textpage.value.substring(i-1,i);
if (!(c=="1" || c=="2" || c=="3" || c=="4" || c=="5" || c=="6" || c=="7" || c=="8" || c=="9" || c=="0"))
{
alert("请输入数字");
document.formpage.textpage.value=document.formpage.pagedown.value-1;
return false;
}
}
if (pagenum=="")
{
alert("请输入跳到页的数字");
return false;
}
document.formpage.submit();
}
</script>
<table class="table1">
<tr><td>查询的表</td></tr>
<tr>
<td>
<table width="100%" class="table2">
<tr>
<td width="25%">字段名称1</td>
<td width="25%">字段名称2</td>
<td width="25%">字段名称3</td>
<td width="25%">字段名称4</td>
<td width="25%">字段名称5</td>
</tr>
<%
dim rs
dim pagenum'计算总页数
dim nowpage'当前页数
dim num
dim sum'记录总数
dim maxnum'每页最大显示行数
dim sumpage'实际总页数
maxnum=10'每页最大显示行数
nowpage=1'当前页数初始化
'***********获得提交的页数
if request("pageif")="1" then'判断是不是下面浏览按钮提交的操作
if request("pagesubmit")="首页" then
nowpage=1
elseif request("pagesubmit")="上一页" then
nowpage=cint(request("pageup"))
elseif request("pagesubmit")="下一页" then
nowpage=cint(request("pagedown"))
elseif request("pagesubmit")="尾页" then
nowpage=cint(request("pagelast"))
else
nowpage=getcint(request("textpage"),1)
end if
else
nowpage=getcint(request("nowpage"),1)
end if
'***********提取数据记录
set rs=server.createobject("adodb.recordset")
rs.open strsql,conn,1,1 '向数据库提交sql语句
if err.number <> 0 then
response.write "数据库错误"
else
if rs.bof and rs.eof then
rs.close
sum=0
pagenum=0
sumpage=0
response.write "无记录"
else
sum=rs.RecordCount'获得符合要求的记录总数
pagenum=int(sum/maxnum)'计算显示的页数
if pagenum>1 then'排除记录只有一页时的情况
if (sum/maxnum)>pagenum then
sumpage=pagenum+1
else:
sumpage=pagenum
end if
else:
sumpage=1
end if
if nowpage>sumpage then'如果输入的页数超出实际页数范围,则当前页设为最大的页数
nowpage=sumpage
end if
rs.movefirst
if nowpage>1 then
rs.move (nowpage-1)*maxnum'从上页显示的记录开始
end if
for num=1 to maxnum
if not rs.eof then
%>
<tr >
<td ><%=rs("字段名")%></td>
<td ><%=rs("字段名")%></td>
<td ><%=rs("字段名")%></td>
<td ><%=rs("字段名")%></td>
<td ><%=rs("字段名")%></td>
</tr>
<%rs.movenext
else %>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<%end if
next
rs.close
end if
end if
set rs=nothing %>
</table>
<table width="100%" border="0" align="center">
<tr>
<td height="20" >
<form method="post" name="formpage" action="<%=web%>" style="margin:0px 0px 0px 0px;">
<input name="pageif" type="hidden" value="<%=1%>" />
<input name="pagefirst" type="hidden" value="<% =1%>" />
<input name="pagesubmit" type="submit" value="首页" class="button"/>
<%if int(nowpage)>1 then %>
<input name="pageup" type="hidden" value="<% =int(nowpage)-1%>" />
<%else: %>
<input name="pageup" type="hidden" value="<% =1%>" />
<% end if%>
<input name="pagesubmit" type="submit" value="上一页" class="button" />
<% if int(nowpage)<pagenum then %>
<input name="pagedown" type="hidden" value="<% =(int(nowpage)+1)%>" />
<%else:%>
<input name="pagedown" type="hidden" value="<% =sumpage %>" />
<%end if %>
<input name="pagesubmit" type="submit" value="下一页" class="button" />
<input name="pagelast" type="hidden" value="<%=sumpage%>" />
<input name="pagesubmit" type="submit" value="尾页" class="button"/>
<font size="2" >共<%=sum%>条记录,第</a></font>
<input name="textpage" type="text" class="txtll" value="<%=nowpage %>" size="5"maxlength="4" />
<font class=font4green> <a>页/共 <%=sumpage%>页</a> </font>
<input type="button" name="pagesubmit" class="button" οnclick="javascript:page()" value="浏览" >
</form>
</td>
</tr>
</table>
</td>
</tr>
</table>