分享
 
 
 

基于组件的asp编程之二--分页对象

王朝asp·作者佚名  2006-12-16
窄屏简体版  字體: |||超大  

在asp中,分页使用的最多的程序段了,把分页写成函数,调用起来,要传很多参数,写成对象,可以使分页

对象调用简单,本文在参考众多网友的分页函数基础上,用javascript把它写成了一个对像放于文件

夹"_ScriptCom"下,文件名为"JPageNavbar.asp",先看一下分页对象的调用方式(由于大多数的asp开发人员使

用vbscript,所以本文的实例采用vbscript编写):

<%@LANGUAGE="VBSCRIPT" %>

<!--#include file="../connections/dbconn.asp" -->

<!--#include file="../_ScriptCom/FAdodb.asp" -->

<!--#include file="../_ScriptCom/FSession.asp" -->

<!--#include file="../_ScriptCom/JPageNavbar.asp" -->

<%

Response.Buffer=true

on error resume next

if trim(Request.ServerVariables("REQUEST_METHOD")) = "POST" then

'取得查询字符串

chxstr=readForm("chxstr")

xshstr=readForm("xshstr")

r1=readForm("R1")

'保存查询条件

session("r1")=r1

session("chxstr")=chxstr

session("xshstr")=xshstr

else

如果不是从form提交,则是分页,从session取的查询条件

r1=readSession("r1")

chxstr=readSession("chxstr")

xshstr =readSession("xshstr")

end if

'这里是一些关于业务的逻辑运算

if xshstr=empty then

xshstr ="查询所有记录"

end if

select case r1

case 1 '在校学生

sql=" select * from v_student_base where graduate=0"

if chxstr<>empty then

sql=sql+" and "+ chxstr

end if

cddr="在校学生"

case 2 ' 毕业学生

sql=" select * from v_student_base where graduate=1"

if chxstr<>empty then

sql=sql+" and "+ chxstr

end if

cddr="毕业学生"

case 0 '全部学生

if chxstr<>empty then

sql="select * from v_student_base where"+" "+chxstr

else

sql="select * from v_student_base"

end if

cddr="全部学生"

case else

response.write "系统参数错误,请与系统管理员联系!"

response.End

end select

'生成connection 和 Recordset

set conn=connCreate(getDBLink())

set rs=rsCreate()

rs.open sql,conn,1,3

if (rs.eof ) then

show_msg "很遗憾,没有您要的记录!",4,"infoQuery.asp"

end if

dim gd(1)

gd(0)="未毕业"

gd(1)="已毕业"

'***************************************************************************

'注意:这里是分页

RowCount =15

set fy=createJPageNavbar()

if (not isEmpty(rs)) then

rs.PageSize = RowCount '设置数据集的页记录

fy.PageSize=RowCount

rs.AbsolutePage =fy.getCurrentPage()

fy.RecordCount=rs.RecordCount

fy.PageCount=rs.pageCount

fy.PnWidth="100%"

fy.PnAlign="center"

fy.PlWidth="100%" '表格宽度

fy.PlAlign="right" ' 表格的对齐方式

end if

'***********************************************************************************

%>

<HTML>

<HEAD>

<TITLE>学生信息查询</TITLE>

<link href="../css/style.css" rel="stylesheet" type="text/css">

</HEAD>

<BODY text="#000000" bgColor="#ffffff" leftMargin="0" topMargin="0">

<br>

<TABLE width="550" border="1" cellspacing="0" cellpadding="1" align="center" class="t_table"

ID="Table1">

<TR>

<TD colspan="2" class="t_head"> :::学生信息搜索结果::: </TD>

</TR>

<TR>

<TD width="80%" align="left"><B>==&gt;&gt;查询条件:</B> <%=xshstr %></TD>

<TD width="20%" align="right"><INPUT type="button" value="返回" class="button"

onclick="gofind()" ID="Button1" NAME="Button1"> </TD>

</TR>

<TR>

<TD colspan="2"><table width="100%" border="0" cellpadding="1" cellspacing="0"

class="t_table" ID="Table2">

<tr align="center">

<td colspan="7"><%

'***************************************************

fy.pnDisplay() '分页的“上一页” “下一页”

'***********************************************************

%></td>

</tr>

<tr>

<td width="13%" class="t_head">学号</td>

<td width="11%" class="t_head">姓名</td>

<td width="8%" class="t_head">性别</td>

<td width="10%" class="t_head">年级</td>

<td width="20%" class="t_head">专业</td>

<td width="28%" class="t_head">二级学院</td>

<td width="10%" class="t_head">状态</td>

</tr>

<% i=0

'********************************************************

while (not rs.eof and i<RowCount) '控制一页显示的记录条数

'*********************************************************

%>

<tr>

<td width="13%" align="center"><a href="#" onclick="openWindow2('stu_msg.asp?

stu_num=<%= rs("stu_num")%>')"><%= rs("stu_num") %></a></td>

<td width="11%" align="center"><%= rs("name") %></td>

<td width="8%" align="center"><%= rs("sex") %></td>

<td width="10%" align="center"><%= rs("gread") %></td>

<td width="20%" align="center"><%= rs("speciality_name") %></td>

<td width="28%" align="center"><%= rs("secondary") %></td>

<td width="10%" align="center"><%=gd(rs("graduate")) %></td>

</tr>

<% i=i+1

rs.moveNext

wend %>

<tr align="right">

<td colspan="7"><%

'**************************************************************

fy.plDisplay() '分页列表

'**************************************************************

%></td>

</tr>

</table> </TD>

</TR>

</TABLE>

</BODY>

</HTML>

<%

rsNull(rs)

connNull(conn)

%>

||||||这里是分页显示的效果图(做了一下处理)

<SCRIPT LANGUAGE=javascript RUNAT=Server>

// ************************************************************************

// Script Compont Object Model

// Design for Active Server Pages

//

// Copyright 2003 Version 1.0

// Made by newsunet

// 请不要删除这一段注释,自由传播,保留所有权

// ************************************************************************

/*//Ado.RecordSet记录分页对象

//设

[1] [2] 下一页

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有