散分:分享一個通用分頁函數

功能:
1.每頁設置顯示9頁,超過9頁,點5頁後的+1頁顯示(可以隨便修改)
2.CSS樣式自己可以設置
3.無任何咋代碼產生,利於搜索引擎優化
4.至於性能怎麼樣大家可以試下
  1. Dim objPDS As PagedDataSource 
  2. '分頁程序 
  3. objPDS = New PagedDataSource() 
  4. objPDS.DataSource = dtTable.DefaultView 
  5. '綁定數據源 
  6. objPDS.AllowPaging = True 
  7. objPDS.PageSize = 10 
  8. '分頁數目 
  9. Dim curPage As Integer 
  10. Dim cshi As Integer 
  11. Dim jshi As Integer 
  12. Dim zyes As Integer = Int32.Parse(objPDS.PageCount.ToString()) 
  13. Me.tjixx.Text = "總共 <font color=red>" & dtTable.Rows.Count & " </font>條信息" 
  14. Me.tjixx.Text += "|共 <font color=red>" & zyes & " </font>頁" 
  15. If Request.QueryString("Page") IsNot Nothing Then 
  16.     If Int32.Parse(Request.QueryString("Page")) > zyes Then 
  17.         curPage = zyes 
  18.     Else 
  19.         curPage = Int32.Parse(Request.QueryString("Page")) 
  20.     End If 
  21. Else 
  22.     
  23.     curPage = 1 
  24. End If 
  25. If zyes <= 9 Then 
  26.     cshi = 1 
  27.     jshi = zyes 
  28.     
  29. Else 
  30.     If curPage <= 5 Then 
  31.         cshi = 1 
  32.         jshi = 9 
  33.         
  34.     Else 
  35.         
  36.         
  37.         cshi = curPage - 4 
  38.         Dim jshils As Integer = curPage + 4 
  39.         If jshils > zyes Then 
  40.             jshi = zyes 
  41.         Else 
  42.             jshi = curPage + 4 
  43.         End If 
  44.         
  45.         
  46.     End If 
  47. End If 
  48. objPDS.CurrentPageIndex = curPage - 1 
  49. Dim m_strPageInfo As New StringBuilder() 
  50. For i As Integer = cshi To jshi 
  51.     If i = Int32.Parse(curPage.ToString()) Then 
  52.         m_strPageInfo.Append(" <span class=""dqye""> <strong>" & i & " </strong> </span> "
  53.     Else 
  54.         m_strPageInfo.Append(((" <span class=""qtye""> <strong> <a href=""newslist_ej" & Request.QueryString("wzcat") & "_Page") + i & ".html"">") + i & " </a> </strong> </span> "
  55.     End If 
  56. Next 
  57. Me.yemsl.Text = m_strPageInfo.ToString() 
  58. If Not objPDS.IsFirstPage Then 
  59.     
  60.     
  61.     linkPre.NavigateUrl = ("newslist_ej" & Request.QueryString("wzcat") & "_Page") + Convert.ToString(curPage - 1) 
  62.     linkPre.NavigateUrl += ".html" 
  63. End If 
  64. If Not objPDS.IsLastPage Then 
  65.     linkNext.NavigateUrl = ("newslist_ej" & Request.QueryString("wzcat") & "_Page") + Convert.ToString(curPage + 1) 
  66.     linkNext.NavigateUrl += ".html" 
  67. End If 
  68. linkFirstPage.NavigateUrl = "newslist_ej" & Request.QueryString("wzcat") & "_Page1" 
  69. linkFirstPage.NavigateUrl += ".html" 
  70. linkEndPage.NavigateUrl = ("newslist_ej" & Request.QueryString("wzcat") & "_Page") + objPDS.PageCount.ToString() 
  71. linkEndPage.NavigateUrl += ".html" 
  72. Me.DataList4.DataSource = objPDS 
  73. '綁定分頁的數據 
  74. Me.DataList4.DataBind() 
發佈了25 篇原創文章 · 獲贊 1 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章