主頁 > 知識庫 > ASP ajax分頁教程一

ASP ajax分頁教程一

熱門標(biāo)簽:團(tuán)購網(wǎng)站 Mysql連接數(shù)設(shè)置 服務(wù)器配置 阿里云 電子圍欄 Linux服務(wù)器 科大訊飛語音識別系統(tǒng) 銀行業(yè)務(wù)
為什么我寫ASP分頁教程要提到AJAX呢,因為我們要多練習(xí)一下編程過程中,結(jié)構(gòu)化的重要性.
再加上很多朋友對分頁感到很高深,所以一直都不敢去碰他,要么就用別人寫好的組件,要么就是改改別人的東西.特別是.net,我深有感觸,假如要快速開發(fā)一個項目,我想.net是一個非常優(yōu)秀的平臺.但是,因為他的嚴(yán)重控件化,反而是新手接觸不到編程的思想,完全找不到編程的感覺,仿佛就象在搭積木.有時候還是要練習(xí)一下底層一點的東西,這樣個人的技術(shù)能力才會得到提高.我可不想做只會用.NET的組裝工人.
好了,下面給出ASP分頁的源代碼給大家,都進(jìn)行了詳細(xì)的注釋,一般都可以看的懂.
因為這個是教程一,所以就從最簡單的開始,我直接使用的AbsolutePage來定義當(dāng)前頁面,所以沒有用諸如MoveFirst這種比較復(fù)雜的游標(biāo)方式,而且分頁也是用的下拉選擇框,等下個教程我再寫一下進(jìn)階分頁方法,給出前進(jìn)十頁,后退十頁,只顯示目前所在的十頁分組的方法.
ASP雖然是一個過時的東西,不過因為他可以使用JS來寫,所以我感覺要做一個項目DEMO的時候,使用ASP要比.NET或者JAVA更方便,因為他不用安裝體積龐大的環(huán)境.簡簡單單配置一下就可以了.真要大規(guī)模項目開發(fā)的話,我肯定還是會用.NET或JAVA的,因為這樣就會涉及到效率問題了. 
復(fù)制代碼 代碼如下:

%@LANGUAGE="JAVASCRIPT" CODEPAGE="936"%>
%
//定義數(shù)據(jù)庫連接語句
var connstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
+Server.MapPath("database/vote.mdb");
//建立一個rs數(shù)據(jù)庫查詢
var rs = Server.CreateObject("ADODB.Recordset")
//rs連接方式
rs.ActiveConnection = connstring
//rs查詢語句(按照用戶提交時間倒序查詢)
rs.Source = "select * from users order by usetime DESC"
//定義數(shù)據(jù)庫查詢模式
rs.CursorType = 3
rs.CursorLocation = 3
rs.LockType = 1
//定義每頁顯示數(shù)據(jù)數(shù)量
rs.PageSize = 10
//打開數(shù)據(jù)庫連接
rs.Open()
//定義數(shù)據(jù)庫紀(jì)錄總數(shù),分頁總數(shù),URL路徑
var counts,pagecos,thisUrl
counts = rs.RecordCount
pagecos = rs.PageCount
thisUrl = Request.ServerVariables("URL")
//如果游標(biāo)在表中就執(zhí)行
if(!rs.EOF || !rs.BOF){
//如果url的page參數(shù)不為空就執(zhí)行
if(Request("page").Count != 0){
//定義默認(rèn)鏈接字符串,第一頁,尾頁,上頁,下頁
//URL的page值(指定的當(dāng)前頁),當(dāng)前頁,當(dāng)前每頁顯示數(shù)據(jù)數(shù)量
var defaltStr,firstpage,lastpage,prepage,nextpage,pages,nowPage,nowSize
defaltStr = 'a href="'+thisUrl+'?page='
firstpage = defaltStr+'1">首頁/a>'
lastpage = defaltStr+pagecos+'">尾頁/a>'
pages = Request("page")
//如果處于第一頁
//首頁,上一頁不為鏈接
if(pages = 1){
rs.AbsolutePage = 1;
firstpage = '首頁'
prepage = '上一頁'
nextpage = defaltStr+'2">下一頁/a>'
//如果處于最后一頁
//尾頁,下一頁不為鏈接
}else if(pages >= pagecos){
rs.AbsolutePage = pagecos;
prepage = defaltStr+(pagecos-1)+'">上一頁/a>'
lastpage = '尾頁'
nextpage = '下一頁'
}else{
rs.AbsolutePage = pages
prepage = defaltStr+(Number(pages)-1)+'">上一頁/a>'
nextpage = defaltStr+(Number(pages)+1)+'">下一頁/a>'
}
}
nowPage = rs.AbsolutePage
nowSize = rs.PageSize
//如果處于最后一頁,并且數(shù)據(jù)顯示數(shù)量與每頁顯示數(shù)據(jù)數(shù)量不相等時
//因為最后一頁不可能每次都剛好與每頁顯示數(shù)據(jù)數(shù)量相等
//所以需要定義一個不相等的方法
if(nowPage >= pagecos (pagecos*rs.PageSize)%counts != 0){
nowSize = counts%rs.PageSize
}
%>
table width="100%" border="0" cellspacing="0" cellpadding="0" class="userinfo">
tr>
td align="center">
!--顯示首頁,上一頁 -->
%=firstpage%> %=prepage%> 
跳轉(zhuǎn)到第 select onchange="location.href='%=thisUrl%>?page='+this.value">
%
//分頁依靠循環(huán)顯示
for(var num=1; num=pagecos; num++){
if(nowPage == num){
%>
option value="%=num%>" selected="selected">%=num%>/option>
%
}else{
%>
option value="%=num%>">%=num%>/option>
%
}
}
%>
/select> 頁
!--顯示下一頁,尾頁 -->
 %=nextpage%> %=lastpage%>
!--顯示當(dāng)前頁數(shù),總頁數(shù),總記錄數(shù),每頁顯示數(shù)據(jù)數(shù)量 -->
 共 %=nowPage%> / %=pagecos%> 頁 %=counts%> / %=rs.PageSize%> 條記錄
/td>
/tr>
%
//內(nèi)容依靠循環(huán)顯示
for(var i=1;i=nowSize;i++){
%>
tr>
td>span>用戶IP:/span>%=rs("usip")%>/td>
/tr>
tr>
td>span>建議:/span>%=rs("us1")%>/td>
/tr>
tr>
td>span>提交時間:/span>%=rs("usetime")%>/td>
/tr>
%
//數(shù)據(jù)庫游標(biāo)向移向下一條記錄
rs.MoveNext();
}
%>
/table>
%
//如果數(shù)據(jù)庫游標(biāo)不在數(shù)據(jù)庫列中
}else{
Response.Write("沒有用戶信息!")
}
//關(guān)閉數(shù)據(jù)庫連接
rs.Close()
%>
您可能感興趣的文章:
  • Ajax.基礎(chǔ)教程 電子書版 提供下載
  • 比較簡單的jquery教程 Easy Ajax with jQuery 中文版全集
  • Ajax+PHP簡單基礎(chǔ)入門實例教程
  • jquery 框架使用教程 AJAX篇
  • 十大最佳Ajax教程收集(圖文)
  • jquery1.4 教程二 ajax方法的改進(jìn)
  • 分享精心挑選的12款優(yōu)秀jQuery Ajax分頁插件和教程
  • ThinkPHP中ajax使用實例教程
  • AJAX初級教程之初識AJAX
  • ajax初級教程之獲取博文列表

標(biāo)簽:萍鄉(xiāng) 大理 廣元 蚌埠 江蘇 衡水 衢州 棗莊

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《ASP ajax分頁教程一》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266