<%@ 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. sencha touch Container 监听超链接插件

    有时候内容直接从后台获取,有可能包含超链接,打包成应用之后,点击会造成不好的后果,这样做能够用外部浏览器打开.需要Cordova支持 监听插件代码: /* *监听a标签,用外部浏览器打开链接 */ E ...

  2. Android - 安装应用(APP) 不显示图标

    装应用(APP) 不显示图标 本文地址:www.2cto.com 在启动的activity的AndroidManifest注册中,添加隐式启动的data: 删除应用图标的若干解决方案: 1.Andro ...

  3. Call removeView() on the child's parent first

    extends:http://stackoverflow.com/questions/6526874/call-removeview-on-the-childs-parent-first Except ...

  4. UPUPW本地环境配置thinkphp5的问题

    问题解决参考: https://blog.csdn.net/lengyue1084/article/details/80001625 看httpd-vhosts.conf的配置: <Virtua ...

  5. 【巷子】---vue基于mint-ui三级联动---【vue】

    一.基本配置 https://github.com/modood/Administrative-divisions-of-China 三级联动数据地址 二.vue基本配置 1.cnpm install ...

  6. ASP.NET IIS System.UnauthorizedAccessException: 对路径“C:\......xls”的访问被拒绝。

    问题: System.UnauthorizedAccessException: 对路径“C:\.....xls”的访问被拒绝. 背景: 项目中用到Excel导出功能,用的是Excel模板的方式来做,意 ...

  7. 使用Maven导出项目依赖的jar包

    步骤1.进入项目目录(有pom.xml的目录) 2.创建存放导出jar依赖包的目录 3.地址栏输入cmd,回车 4.输入导出命令,回车mvn dependency:copy-dependencies  ...

  8. 解决下载的CHM文件无法显示网页问题

    问题症状:打开CHM文件,左边目录齐全,可右边边框里却是无法显示网页. 解决方法:方法一:修改注册表1)新建一个文本文件2)添加如下内容:REGEDIT4[HKEY_LOCAL_MACHINE\SOF ...

  9. 2018/03/29 每日一个Linux命令 之 ping

    ping 用于测试两及其网络是否通 主要用于检测网络是否通畅. -- 具体语法 ping [-dfnqrRv][-c<完成次数>][-i<间隔秒数>][-I<网络界面&g ...

  10. 2018/03/18 每日一个Linux命令 之 split

    spilt 命令用于将一个文件分割成数个 默认情况下 按照每1000 切割成一个小文件 split [-参数] [要切割的文件] [输出文件名] 参数 -[行数] 指定每多少行切成一个小文件 -b 字 ...