<%@ include file="/init.jsp" %>

<script type="text/javascript" src="jquery-1.12.0.min.js"></script>
        <script type="text/javascript" src="jquery-ui.min-1.11.4.js"></script>
        <meta charset="utf-8" />
        <link href="http://cdn.bootcss.com/bootstrap/4.0.0-alpha/css/bootstrap.min.css" rel="stylesheet">
        <script src="http://cdn.bootcss.com/bootstrap/4.0.0-alpha/js/bootstrap.min.js"></script>
        <style type="text/css">
            .root-right {
             
              float: right;
            
          margin-top: 10px;
}
        
        </style>
        
        
        
        
        <ul class="pagination">
          <%
                Locale pagelocale = PortalUtil.getLocale(renderRequest);
                Integer pageCount = (Integer)renderRequest.getAttribute("pageCount");
                Integer pageNo = (Integer)renderRequest.getPortletSession().getAttribute("pageNo");
                if(pageCount != null && pageNo != null){
    
                if(pageCount > 1  && !pageNo.equals(Integer.valueOf(1))) {
                
            %>
            
            <li><a class="crm-page-previous" href='javascript:entityPage("<%=pageNo - 1%>")'>&laquo;</a></li>
         <%  }
             if(pageCount <= 10) {
        for (int i = 0; i < pageCount; i++) {
            if(Integer.valueOf(i+1).equals(pageNo)) {
                if(!pageCount.equals(Integer.valueOf(1))){
                %>
                        <li class="active"><a href='javascript:entityPage(<%=pageNo %>)'><%=pageNo %></a></li>

<%                
                }
                i = i+1;
                if(pageNo.equals(pageCount))
                    break;
            }
            %>
            
          <li><a class="crm-page" href='javascript:entityPage(<%=i + 1 %>)'> <%= i + 1 %> </a></li>
         <%        
        }
    } else if(pageCount <= 20) {

int l = 0;
        int r = 0;
        if(pageNo < 5) {
            l = pageNo - 1;
            r = 10 - l - 1;
        }else if(pageCount-pageNo < 5) {
            r = pageCount - pageNo;
            l = 10 - 1 - r;
        }else {
            l = 4;
            r = 5;
        }
          int tmp = pageNo - l;
           for (int i = tmp; i < tmp + 10; i++)  {
            if(Integer.valueOf(i).equals(pageNo)) {
            if(!pageCount.equals(Integer.valueOf(1))){%>
                 <li class="active"><a href='javascript:entityPage(<%=pageNo %>)'><%=pageNo %></a></li>    
            <%
            }
               i = i+1;
               if(pageNo.equals(pageCount)) break;
            }
            %>
            <li><a class="crm-page" href='javascript:entityPage(<%=i %>)'> <%=i %> </a></li><%
          }
    } else if(pageNo < 7) {
        for (int i = 0; i < 8; i++)  {
            if(Integer.valueOf(i+1).equals(pageNo)) {%>
                 <li class="active"><a href='javascript:entityPage(<%=pageNo %>)'><%=pageNo %></a></li><%
                  
                i = i+1;
            }
            %>
            <li><a class="crm-page" href='javascript:entityPage(<%=i+1 %>)'> <%=i+1%> </a></li><%
        }
        %>
          <li><a class="crm-page" href='javascript:entityPage(<%=pageCount - 1 %>)'><%=pageCount - 1 %> </a></li>
        <li><a class="crm-page" href='javascript:entityPage(<%=pageCount %>)'> <%=pageCount %> </a></li><%
          } else if(pageNo > pageCount - 6) {%>
        <li><a class="crm-page" href='javascript:entityPage(<%=1 %>)'> 1 </a></li>
        <li><a class="crm-page" href='javascript:entityPage(<%=2 %>)'> 2 </a></li>
        <%
        for (int i = pageCount-8; i <pageCount ; i++)  {
            if(Integer.valueOf(i+1).equals(pageNo)) { %>
               <%
                i = i+1;
                if(pageNo.equals(pageCount)) break;
            }
            %>
             <li><a class="crm-page" href='javascript:entityPage(<%=i+1 %>)'> <%= i + 1 %></a></li>
          <%
        }

} else {%>
        <li><a class="crm-page" href='javascript:entityPage(<%=1 %>)'> 1 </a></li>
        <li><a class="crm-page" href='javascript:entityPage(<%=2 %>)'> 2 </a></li>
          <li><a class="crm-page" href='javascript:entityPage(<%=pageNo - 2 %>)'> <%=pageNo - 2 %></a></li>
        <li><a class="crm-page" href='javascript:entityPage(<%=pageNo - 1 %>)'> <%=pageNo - 1 %></a></li>
        <li class="active"><a href='javascript:entityPage(<%=pageNo %>)'><%=pageNo %></a></li>
        <li><a class="crm-page" href='javascript:entityPage(<%=pageNo + 1 %>)'> <%=pageNo + 1 %></a></li>
        <li><a class="crm-page" href='javascript:entityPage(<%=pageNo + 2 %>)'><%=pageNo + 2 %></a></li>
          <li><a class="crm-page" href='javascript:entityPage(<%=pageCount - 1 %>)'> <%=pageCount - 1 %></a></li>
        <li><a class="crm-page" href='javascript:entityPage(<%=pageCount %>)'> <%=pageCount  %> </a></li>
              <%
    }
    if(!pageNo.equals(pageCount) && pageCount > 1) {%>
        <li><a class="crm-page-home" href='javascript:entityPage(<%=pageNo + 1 %>)'>&raquo;</a></li>
        
          <%
    }
    %>
    &nbsp;&nbsp;
    <div class="root-right">
    <label>
        <%=LanguageUtil.get(PortletIDs.INITIALIZATION, pagelocale, "page.total")%>&nbsp;<%=pageNo.equals(Integer.valueOf(0)) ? 1 : pageCount %>&nbsp;<%=LanguageUtil.get(PortletIDs.INITIALIZATION, pagelocale, "page.page")%>,
        <%=LanguageUtil.get(PortletIDs.INITIALIZATION, pagelocale, "page.current")%>&nbsp;<%=pageNo %>&nbsp;<%=LanguageUtil.get(PortletIDs.INITIALIZATION, pagelocale, "page.page")%>
    </label>
    </div>
    <%
}
%>
        </ul>

分页Bootstrap实现的更多相关文章

  1. Bootstrap <基础十九>分页

    Bootstrap 支持的分页特性.分页(Pagination),是一种无序列表,Bootstrap 像处理其他界面元素一样处理分页. 分页(Pagination) 下表列出了 Bootstrap 提 ...

  2. Bootstrap <基础三十二>模态框(Modal)插件

    模态框(Modal)是覆盖在父窗体上的子窗体.通常,目的是显示来自一个单独的源的内容,可以在不离开父窗体的情况下有一些互动.子窗体可提供信息.交互等. 如果您想要单独引用该插件的功能,那么您需要引用  ...

  3. Bootstrap <基础三十一>插件概览

    在前面布局组件中所讨论到的组件仅仅是个开始.Bootstrap 自带 12 种 jQuery 插件,扩展了功能,可以给站点添加更多的互动.即使不是一名高级的 JavaScript 开发人员,也可以着手 ...

  4. Bootstrap <基础三十>Well

    Well 是一种会引起内容凹陷显示或插图效果的容器 <div>.为了创建 Well,只需要简单地把内容放在带有 class .well 的 <div> 中即可.下面的实例演示了 ...

  5. Bootstrap <基础二十九>面板(Panels)

    Bootstrap 面板(Panels).面板组件用于把 DOM 组件插入到一个盒子中.创建一个基本的面板,只需要向 <div> 元素添加 class .panel 和 class .pa ...

  6. Bootstrap <基础二十八>列表组

    列表组.列表组件用于以列表形式呈现复杂的和自定义的内容.创建一个基本的列表组的步骤如下: 向元素 <ul> 添加 class .list-group. 向 <li> 添加 cl ...

  7. Bootstrap<基础二十七> 多媒体对象(Media Object)

    Bootstrap 中的多媒体对象(Media Object).这些抽象的对象样式用于创建各种类型的组件(比如:博客评论),我们可以在组件中使用图文混排,图像可以左对齐或者右对齐.媒体对象可以用更少的 ...

  8. Bootstrap <基础二十六>进度条

    Bootstrap 进度条.在本教程中,你将看到如何使用 Bootstrap 创建加载.重定向或动作状态的进度条. Bootstrap 进度条使用 CSS3 过渡和动画来获得该效果.Internet ...

  9. Bootstrap <基础二十五>警告(Alerts)

    警告(Alerts)以及 Bootstrap 所提供的用于警告的 class.警告(Alerts)向用户提供了一种定义消息样式的方式.它们为典型的用户操作提供了上下文信息反馈. 您可以为警告框添加一个 ...

随机推荐

  1. ubuntu 重启网络方法--通过杀死进程重启网络

    重启网络方法(通过杀死进程方式,达到网络重启) zh@zh:~$sudo NetworkManager restart //查看进程idNetworkManager 已正运行(pid 10254)zh ...

  2. 【BZOJ1294】[SCOI2009]围豆豆Bean 射线法+状压DP+SPFA

    [BZOJ1294][SCOI2009]围豆豆Bean Description Input 第一行两个整数N和M,为矩阵的边长. 第二行一个整数D,为豆子的总个数. 第三行包含D个整数V1到VD,分别 ...

  3. iOS property中的strong 、weak、copy 、assign 、retain 、unsafe_unretained 与autoreleasing区别和作用详解

    iOS5中加入了新知识,就是ARC,其实我并不是很喜欢它,因为习惯了自己管理内存.但是学习还是很有必要的. 在iOS开发过程中,属性的定义往往与retain, assign, copy有关,我想大家都 ...

  4. humid vs wet vs moist

    想表达天气很潮湿该用哪个词呢? 跟一个美国人聊天,我说wet他没听清,然后我说moist,然后他反应过来了:"oh,humid" 那~还是用humid吧

  5. http后台json解析实例

    localhost:8080/hbinterface/orderInterface/sIReverseAccept.do?bizType=4&&bnetAccount=ESBTEST2 ...

  6. python的接口和抽象类

    抽象基类 有些面向对象的语言,如JAVA,支持接口,可以声明一个支持给定的一些方法方法,或者支持给定存取协议的类.抽象基类(或者ABCs)是Python里一个相同的特性.抽象基类由abc模块构成,包含 ...

  7. CSS基础问题

    1.css引入问题 本来以为css引入是很简单的问题,但是在写demo中,使用连接方式引入就出现了问题,找了半天,还是说一下问题吧. 在引入时没有写rel="stylesheet" ...

  8. opencv之Mat数据类型

    data:Mat对象中的一个指针,指向内存中存放矩阵数据的一块内存 (uchar* data) dims:Mat所代表的矩阵的维度,如 3 * 4 的矩阵为 2 维, 3 * 4 * 5 的为3维 c ...

  9. postgresql+postgis+pgrouting安装步骤图解

    1.在此(https://www.bigsql.org/postgresql/installers.jsp/)下载postgresql(开源数据库,gis行业推荐使用); 2.在此(http://wi ...

  10. SVN里直接把本地目录纳入管理

    如果本地有个已有的目录,要直接纳入SVN管理,怎么办呢?直接在Repository Browser里面 Add folder,但这样虽然把目录加到SVN,但本地目录没有纳入管理,你还要重新又下到本地才 ...