zoukankan      html  css  js  c++  java
  • 类似baidu google分页页码效果的代码

    以后做图片网站用过,现在只写出代码,其实没什么技术含量,只是最近工作不顺,心情稍差,思维有点懒惰,工作的时候需要抄过来用用OK,所才Post在此.  
            /// <summary>
            
    /// 创建并显示分页器
            
    /// </summary>

            private void BuildPager(int totalRecords,int currentPage,int pageSize,int pid)
            
    {
                
    int alter = 4
     ;
                
    int startPage = 1
     ;
                
    int endPage = currentPage +
     alter ;
                
    int totalPages = this
    .CalculateTotalPages(totalRecords,pageSize) ;

                
    if(currentPage >
     alter)
                
    {
                    startPage 
    = currentPage -
     alter ;
                }


                
    if(endPage > totalPages)
                
    {
                    endPage 
    =
     totalPages ;
                }


                
    string strTemp = @"<a href='PhotoList.aspx?pid={0}&pno={1}'>{2}</a>&nbsp;&nbsp;" ;
                StringBuilder sb 
    = new StringBuilder(""
    ) ;
                
    if(currentPage !=
     startPage)
                
    {
                    sb.Append( 
    string.Format( strTemp , pid , 1 , "上一页"
     ) ) ;
                }


                
    forint i = startPage ; i <= endPage ; i++ )
                
    {
                    
    if( currentPage ==
     i )
                    
    {
                        sb.Append(
    "<font color=red>" + i + "</font>&nbsp;&nbsp;"
    ) ;
                    }

                    
    else
                    
    {
                        sb.Append( 
    string.Format( strTemp , pid , i ,"[" + i + "]"
     ) ) ;
                    }

                }


                
    if(currentPage != endPage)
                
    {
                    sb.Append( 
    string.Format( strTemp , pid , currentPage + 1 , "下一页"
    ) ) ;
                }


                
    this.ltlShowPager.Text = sb.ToString() ;
            }


            
    /// <summary>
            
    /// 计算总页数
            
    /// </summary>

            
    /// <param name="totalRecords">总记录数</param>
            
    /// <param name="pageSize">每页记录数</param>

            private int CalculateTotalPages(int totalRecords, int pageSize) 
            
    {
                
    int
     totalPagesAvailable;

                totalPagesAvailable 
    = totalRecords /
     pageSize;

                
    //由于C#的整形除法 会把所有余数舍入为0,所以需要判断是否需要加1

                if ((totalRecords % pageSize) > 0)
                    totalPagesAvailable
    ++
    ;

                
    return
     totalPagesAvailable;
            }
  • 相关阅读:
    记录下平台多种语言加密算法实施的历程
    Php AES加密、解密与Java互操作的问题
    Tomcat服务器常用配置和HTTP简介
    淘宝IP地址查询
    linux下hexdump和od命令:显示文件十六进制格式
    技术讨论 | 简谈渗透测试各阶段我常用的那些“神器”
    串口发送数据速度
    在Qt示例项目的C ++ / QML源中的//! [0]的含义是什么?
    C++ 函数参数中“ *&代表什么? ”
    c++中三种参数引用方式
  • 原文地址:https://www.cnblogs.com/kwklover/p/381832.html
Copyright © 2011-2022 走看看