分页代码(显示单个页码和页面跳转)

//_url为跳转到下一页的Url,pageIndex为响应的页码,pageCount为计算后的总页数

// count为列表的总记录数,从数据库查询得到,下面语句用来计算总页数

 if (count > 0)
              pageCount 
= count / pageSize + (count % pageSize != 0 ? 1 : 0);

 public static string _GetNavBarSelectHtml(string _url, int pageIndex, int pageCount)
        {
            
if (pageCount <= 1)
                
return string.Empty;
            pageIndex 
= pageIndex + 1;
            
// 计算显示页码
            int x = pageIndex / 9;
            
if (pageIndex % 9 == 0--x;
            
int startPage = (x * 9+ 1;
            
int endPage = Math.Min(pageCount, startPage + 8);
            
// 生成换页代码
            System.Text.StringBuilder sb = new StringBuilder();

            
string url = _url;
            
if (string.IsNullOrEmpty(url))
                
return string.Empty;
            
if (url.Contains("{0}"))
                url 
= string.Format(url, "&Page={1}");
            
else if (!url.Contains("?"))
                url 
= _url + "?Page={1}";
            
else
                url 
= _url + "&Page={1}";
            url 
= "<a href = \"" + url + "\">{0}</a>";
            sb.Append(
"<ul>");
            sb.Append(
" <li>页面显示</li>");
            
//上一页
            if (pageIndex == 1)
            {
                sb.Append(
"<li>");
                sb.Append(
"<a> <img src='/Images/com_gallery/pic_28.jpg' /><a>");
                sb.Append(
"</li>");
            }
            
else
            {
                sb.Append(
"<li>");
                sb.AppendLine(String.Format(url, 
"  <img src='/Images/com_gallery/pic_28.jpg' />", pageIndex - 1));
                sb.Append(
"</li>");
            }
            sb.Append(
"<li>");
            
if (startPage > 1)
                sb.Append(String.Format(url, 
"...", pageIndex - 1));
            sb.Append(
"</li>");
            
for (int i = startPage; i <= endPage; i++)
            {
                
if (i != pageIndex)
                {
                    sb.Append(
"<li>");
                    sb.Append(String.Format(url, 
"[" + i + "]", i));
                    sb.Append(
"</li>");
                }
                
else
                {
                    sb.Append(
"<li class='select'>");
                    sb.Append(
string.Format("<a>[{0}]</a>", i));
                    sb.Append(
"</li>");
                }
            }

           
if (pageCount > endPage)
            {
                sb.Append(
"<li>");
                sb.Append(String.Format(url, 
"...", endPage + 1));
                sb.Append(
"</li>");
            }

            
//下一页
            if (pageIndex == pageCount)
            {
                sb.Append(
"<li>");
                sb.Append(
"<a><img src='/Images/com_gallery/pic_30.jpg' /></a>");
                sb.Append(
"</li>");
            }
            
else
            {                
                sb.Append(
"<li >");
                sb.Append(String.Format(url, 
"<img src='/Images/com_gallery/pic_30.jpg' />", pageIndex + 1));
                sb.Append(
"</li>");
            }
         
            sb.Append(
" <li>");
            sb.Append(
" <div align=\"right\">");
            sb.Append(
"&nbsp;到第");
            sb.Append(
"<input  name='inputpagenum' style='width:35px' type='text'/>");
            sb.Append(
"页&nbsp;</div>");
            sb.Append(
"</li><li>");

            sb.Append(
"<img onclick=\"jumpPage('" + pageCount + "')\"  src=\"Template/default/images/login_01.jpg\" /></li>");
            sb.Append(
"</ul>");

            
return sb.ToString();
        }

 

posted @ 2011-03-21 16:21  aisoon99  阅读(448)  评论(0编辑  收藏  举报