打印

[ASP在线教程] asp中可以保存参数值的分页代码

asp中可以保存参数值的分页代码

<%''+++++++++++++++++++++++++++++++++++++++++++++++++++++++
''调用例子
'dim int_rpp,int_start,int_shownumberlink_,str_nonlinkcolor_,tof_,top10_,top1_,ton1_,ton10_,tol_,showmorepagego_type_,cpageno
'int_rpp=2 '设置每页显示数目
'int_shownumberlink_=8 '数字导航显示数目
'showmorepagego_type_ = 1 '是下拉菜单还是输入值跳转,当多次调用时只能选1
'str_nonlinkcolor_="#999999" '非热链接颜色
'tof_="<font face=webdings>9</font>"     '首页
'top10_=" <font face=webdings>7</font>"   '上十
'top1_=" <font face=webdings>3</font>"   '上一
'ton1_=" <font face=webdings>4</font>"   '下一
'ton10_=" <font face=webdings>8</font>"   '下十
'tol_="<font face=webdings>:</font>"    '尾页
'============================================
'这段代码一定要在vclass_rs.open 与 for循环之间
' set vclass_rs = createobject(g_fs_rs)
' vclass_rs.open this_fun_sql,user_conn,1,1
' if not vclass_rs.eof then
' vclass_rs.pagesize=int_rpp
' cpageno=nosqlhack(request.querystring("page"))
' if cpageno="" then cpageno = 1
' if not isnumeric(cpageno) then cpageno = 1
' cpageno = clng(cpageno)
' if cpageno<=0 then cpageno=1
' if cpageno>vclass_rs.pagecount then cpageno=vclass_rs.pagecount
' vclass_rs.absolutepage=cpageno
'   for int_start=1 to int_rpp
   ''++++++++++
   '加循环体显示数据
   ''++++++++++
'  vclass_rs.movenext
'  if vclass_rs.eof or vclass_rs.bof then exit for
'      next
' end if   
'============================================
'response.write "<p>"&  fpagecount(vclass_rs,int_shownumberlink_,str_nonlinkcolor_,tof_,top10_,top1_,ton1_,ton10_,tol_,showmorepagego_type_,cpageno)
''++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
'*********************************************************
' 目的:分页的页面参数保持
'          提交查询的一致性
' 输入:moveparam:分页参数
'         removelist:要移除的参数
' 返回:分页url
'*********************************************************
function pageurl(moveparam,removelist)
dim strname
dim keepurl,keepform,keepmove
removelist=removelist&","&moveparam
keepform=""
for each strname in request.form
  '判断form参数中的submit、空值
  if not instrrev(","&removelist&",",","&strname&",", -1, 1)>0 and request.form(strname)<>"" then
   keepform=keepform&"&"&strname&"="&server.urlencode(request.form(strname))
  end if
  removelist=removelist&","&strname
next
  
keepurl=""
for each strname in request.querystring
  if not (instrrev(","&removelist&",",","&strname&",", -1, 1)>0) then
   keepurl = keepurl & "&" & strname & "=" & server.urlencode(request.querystring(strname))
  end if
next

keepmove=keepform&keepurl

if (keepmove <> "") then
   keepmove = right(keepmove, len(keepmove) - 1)
   keepmove = server.htmlencode(keepmove) & "&"
end if

'pageurl = replace(request.servervariables("url"),"/search.asp","/search.html") & "?" & keepmove & moveparam & "="
pageurl =  "?" & keepmove & moveparam & "="
end function

function fpagecount(page_rs,shownumberlink_,nonlinkcolor_,tof_,top10_,top1_,ton1_,ton10_,tol_,showmorepagego_type_,page)
dim this_func_get_html_,topage_,p_,sp2_,i,tpagecount
dim navilength,startpage,endpage
this_func_get_html_ = ""  : i = 1   
navilength=shownumberlink_
if isempty(showmorepagego_type_) then showmorepagego_type_ = 1
tpagecount=page_rs.pagecount
if tpagecount<1 then tpagecount=1
if not page_rs.eof or not page_rs.bof then
topage_ = pageurl("page","submit,gettype,no-cache,_")
if page=1 then
this_func_get_html_=this_func_get_html_& "<font color="&nonlinkcolor_&" title=""首页"">"&tof_&"</font> " &vbnewline
else
this_func_get_html_=this_func_get_html_& "<a href="&topage_&"1 title=""首页"">"&tof_&"</a> " &vbnewline
end if
if page<navilength then
startpage = 1
else
startpage = fix(page / navilength) * navilength
end if
endpage=startpage+navilength-1
if endpage>tpagecount then endpage=tpagecount
if startpage>1 then
this_func_get_html_=this_func_get_html_& "<a href="&topage_& page - navilength &" title=""上"&int_shownumberlink_&"页"">"&top10_&"</a> "  &vbnewline
else
this_func_get_html_=this_func_get_html_& "<font color="&nonlinkcolor_&" title=""上"&int_shownumberlink_&"页"">"&top10_&"</font> "  &vbnewline
end if
if page <> 1 and page <>0 then
this_func_get_html_=this_func_get_html_& "<a href="&topage_&(page-1)&"  title=""上一页"">"&top1_&"</a> "  &vbnewline
else
this_func_get_html_=this_func_get_html_& "<font color="&nonlinkcolor_&" title=""上一页"">"&top1_&"</font> "  &vbnewline
end if
for i=startpage to endpage
if i=page then
  this_func_get_html_=this_func_get_html_& "<b>"&i&"</b>"  &vbnewline
else
  this_func_get_html_=this_func_get_html_& "<a href="&topage_&i&">" &i& "</a>"  &vbnewline

end if
if i<>tpagecount then this_func_get_html_=this_func_get_html_& vbnewline
next
if page <> page_rs.pagecount and page <>0 then
this_func_get_html_=this_func_get_html_& " <a href="&topage_&(page+1)&" title=""下一页"">"&ton1_&"</a> "  &vbnewline
else
this_func_get_html_=this_func_get_html_& "<font color="&nonlinkcolor_&" title=""下一页"">"&ton1_&"</font> "  &vbnewline
end if
if endpage<tpagecount then  
this_func_get_html_=this_func_get_html_& " <a href="&topage_& page + navilength &"  title=""下"&int_shownumberlink_&"页"">"&ton10_&"</a> "  &vbnewline
else
this_func_get_html_=this_func_get_html_& " <font color="&nonlinkcolor_&"  title=""下"&int_shownumberlink_&"页"">"&ton10_&"</font> "  &vbnewline
end if
if page_rs.pagecount<>page then  
this_func_get_html_=this_func_get_html_& "<a href="&topage_&page_rs.pagecount&" title=""尾页"">"&tol_&"</a>"  &vbnewline
else
this_func_get_html_=this_func_get_html_& "<font color="&nonlinkcolor_&" title=""尾页"">"&tol_&"</font>"  &vbnewline
end if
if showmorepagego_type_ = 1 then
dim show_page_i
show_page_i = page + 1
if show_page_i > tpagecount then show_page_i = 1
this_func_get_html_=this_func_get_html_& "<input type=""text"" size=""4"" maxlength=""10"" name=""func_input_page"" onmouseover=""this.focus();"" onfocus=""this.value='"&show_page_i&"';"" onkeyup=""value=value.replace(/[^1-9]/g,'')"" onbeforepaste=""clipboarddata.setdata('text',clipboarddata.getdata('text').replace(/[^1-9]/g,''))"">" &vbnewline _
  &"<input type=""button"" value=""go"" onmouseover=""func_input_page.focus();"" onclick=""javascript:var js_jumpvalue;js_jumpvalue=document.all.func_input_page.value;if(js_jumpvalue=='' || !isnan(js_jumpvalue)) location='"&topage_&"'+js_jumpvalue; else location='"&topage_&"1';"">"  &vbnewline
else
this_func_get_html_=this_func_get_html_& " 跳转:<select name=menu1 onchange=""var js_jumpvalue;js_jumpvalue=this.options[this.selectedindex].value;if(js_jumpvalue!='') location=js_jumpvalue;"">"
for i=1 to tpagecount
  this_func_get_html_=this_func_get_html_& "<option value="&topage_&i
  if page=i then this_func_get_html_=this_func_get_html_& " selected style='color:#0000ff'"
  this_func_get_html_=this_func_get_html_& ">第"&cstr(i)&"页</option>" &vbnewline
next
this_func_get_html_=this_func_get_html_& "</select>" &vbnewline
end if
this_func_get_html_=this_func_get_html_& p_&sp2_&"  每页<b>"&page_rs.pagesize&"</b>个记录,现在是:<b><span class=""tx"">"&sp2_&page&"</span>/"&tpagecount&"</b>页,共<b><span id='recordcount'>"&sp2_&page_rs.recordcount&"</span></b>个记录。"
else
'没有记录
end if
fpagecount = this_func_get_html_
end function
%>
http://blog.csdn.net/hzf100/archive/2006/12/28/1465471.aspx



TOP

返回顶部
AYBlue

Processed in 0.052064 second(s), 7 queries.

当前时区 GMT+8, 现在时间是 2009-1-8 14:19 京ICP备06054220号

清除 Cookies - 联系我们 - 163K.com - Archiver - WAP