文档章节

分页

贝克街的亡灵sf
 贝克街的亡灵sf
发布于 2016/05/27 10:38
字数 1006
阅读 60
收藏 1

package com.fh.entity;

import com.fh.util.Const;
import com.fh.util.PageData;
import com.fh.util.Tools;

public class Page {
    
    private int showCount; //每页显示记录数
    private int totalPage;        //总页数
    private int totalResult;    //总记录数
    private int currentPage;    //当前页
    private String isNetData;//判断是否是云端
    private int currentResult;    //当前记录起始索引
    private boolean entityOrField;    //true:需要分页的地方,传入的参数就是Page实体;false:需要分页的地方,传入的参数所代表的实体拥有Page属性
    private String pageStr;        //最终页面显示的底部翻页导航,详细见:getPageStr();
    private PageData pd = new PageData();
    

    
    public String getIsNetData() {
        return isNetData;
    }

    public void setIsNetData(String isNetData) {
        this.isNetData = isNetData;
    }

    public Page(){
        try {
            this.showCount = Integer.parseInt(Tools.readTxtFile(Const.PAGE));
        } catch (Exception e) {
            this.showCount = 15;
        }
    }
    
    public int getTotalPage() {
        if(totalResult%showCount==0)
            totalPage = totalResult/showCount;
        else
            totalPage = totalResult/showCount+1;
        return totalPage;
    }
    
    public void setTotalPage(int totalPage) {
        this.totalPage = totalPage;
    }
    
    public int getTotalResult() {
        return totalResult;
    }
    
    public void setTotalResult(int totalResult) {
        this.totalResult = totalResult;
    }
    
    public int getCurrentPage() {
        if(currentPage<=0)
            currentPage = 1;
        if(currentPage>getTotalPage())
            currentPage = getTotalPage();
        return currentPage;
    }
    
    public void setCurrentPage(int currentPage) {
        this.currentPage = currentPage;
    }
    
    public String getPageStr() {
        StringBuffer sb = new StringBuffer();
        if(totalResult>0){
            sb.append("    <ul>\n");
            if(currentPage==1){
                sb.append("    <li><a>共<font color=red>"+totalResult+"</font>条</a></li>\n");
                sb.append("    <li><input type=\"number\" value=\"\" id=\"toGoPage\" style=\"width:50px;text-align:center;float:left\" placeholder=\"页码\"/></li>\n");
                sb.append("    <li style=\"cursor:pointer;\"><a onclick=\"toTZ();\"  class=\"btn btn-mini btn-success\">跳转</a></li>\n");
                sb.append("    <li><a>首页</a></li>\n");
                sb.append("    <li><a>上页</a></li>\n");
            }else{
                sb.append("    <li><a>共<font color=red>"+totalResult+"</font>条</a></li>\n");
                sb.append("    <li><input type=\"number\" value=\"\" id=\"toGoPage\" style=\"width:50px;text-align:center;float:left\" placeholder=\"页码\"/></li>\n");
                sb.append("    <li style=\"cursor:pointer;\"><a onclick=\"toTZ();\"  class=\"btn btn-mini btn-success\">跳转</a></li>\n");
                sb.append("    <li style=\"cursor:pointer;\"><a onclick=\"nextPage(1)\">首页</a></li>\n");
                sb.append("    <li style=\"cursor:pointer;\"><a onclick=\"nextPage("+(currentPage-1)+")\">上页</a></li>\n");
            }
            int showTag = 5;//分页标签显示数量
            int startTag = 1;
            if(currentPage>showTag){
                startTag = currentPage-1;
            }
            int endTag = startTag+showTag-1;
            for(int i=startTag; i<=totalPage && i<=endTag; i++){
                if(currentPage==i)
                    sb.append("<li><a><font color='#808080'>"+i+"</font></a></li>\n");
                else
                    sb.append("    <li style=\"cursor:pointer;\"><a onclick=\"nextPage("+i+")\">"+i+"</a></li>\n");
            }
            if(currentPage==totalPage){
                sb.append("    <li><a>下页</a></li>\n");
                sb.append("    <li><a>尾页</a></li>\n");
            }else{
                sb.append("    <li style=\"cursor:pointer;\"><a onclick=\"nextPage("+(currentPage+1)+")\">下页</a></li>\n");
                sb.append("    <li style=\"cursor:pointer;\"><a onclick=\"nextPage("+totalPage+")\">尾页</a></li>\n");
            }
            sb.append("    <li><a>第"+currentPage+"页</a></li>\n");
            sb.append("    <li><a>共"+totalPage+"页</a></li>\n");
            
            if(this.isNetData==null||this.isNetData.equals("")){//是否是云端数据
                sb.append("    <li><select title='显示条数' style=\"width:55px;float:left;\" onchange=\"changeCount(this.value)\">\n");
                sb.append("    <option value='"+showCount+"'>"+showCount+"</option>\n");
                sb.append("    <option value='10'>10</option>\n");
                sb.append("    <option value='20'>20</option>\n");
                sb.append("    <option value='30'>30</option>\n");
                sb.append("    <option value='40'>40</option>\n");
                sb.append("    <option value='50'>50</option>\n");
                sb.append("    <option value='60'>60</option>\n");
                sb.append("    <option value='70'>70</option>\n");
                sb.append("    <option value='80'>80</option>\n");
                sb.append("    <option value='90'>90</option>\n");
                sb.append("    <option value='99'>99</option>\n");
                sb.append("    </select>\n");
                sb.append("    </li>\n");
            }else{
                sb.append("    <li><a>每页显示"+showCount+"条</a></li>\n");
            }
            sb.append("</ul>\n");
            sb.append("<script type=\"text/javascript\">\n");
            
            //换页函数
            sb.append("function nextPage(page){");
            sb.append(" top.jzts();");
            sb.append("    if(true && document.forms[0]){\n");
            sb.append("        var url = document.forms[0].getAttribute(\"action\");\n");
            sb.append("        if(url.indexOf('?')>-1){url += \"&"+(entityOrField?"currentPage":"page.currentPage")+"=\";}\n");
            sb.append("        else{url += \"?"+(entityOrField?"currentPage":"page.currentPage")+"=\";}\n");
            sb.append("        url = url + page + \"&" +(entityOrField?"showCount":"page.showCount")+"="+showCount+"\";\n");
            sb.append("        document.forms[0].action = url;\n");
            sb.append("        document.forms[0].submit();\n");
            sb.append("    }else{\n");
            sb.append("        var url = document.location+'';\n");
            sb.append("        if(url.indexOf('?')>-1){\n");
            sb.append("            if(url.indexOf('currentPage')>-1){\n");
            sb.append("                var reg = /currentPage=\\d*/g;\n");
            sb.append("                url = url.replace(reg,'currentPage=');\n");
            sb.append("            }else{\n");
            sb.append("                url += \"&"+(entityOrField?"currentPage":"page.currentPage")+"=\";\n");
            sb.append("            }\n");
            sb.append("        }else{url += \"?"+(entityOrField?"currentPage":"page.currentPage")+"=\";}\n");
            sb.append("        url = url + page + \"&" +(entityOrField?"showCount":"page.showCount")+"="+showCount+"\";\n");
            sb.append("        document.location = url;\n");
            sb.append("    }\n");
            sb.append("}\n");
            
            //调整每页显示条数
            sb.append("function changeCount(value){");
            sb.append(" top.jzts();");
            sb.append("    if(true && document.forms[0]){\n");
            sb.append("        var url = document.forms[0].getAttribute(\"action\");\n");
            sb.append("        if(url.indexOf('?')>-1){url += \"&"+(entityOrField?"currentPage":"page.currentPage")+"=\";}\n");
            sb.append("        else{url += \"?"+(entityOrField?"currentPage":"page.currentPage")+"=\";}\n");
            sb.append("        url = url + \"1&" +(entityOrField?"showCount":"page.showCount")+"=\"+value;\n");
            sb.append("        document.forms[0].action = url;\n");
            sb.append("        document.forms[0].submit();\n");
            sb.append("    }else{\n");
            sb.append("        var url = document.location+'';\n");
            sb.append("        if(url.indexOf('?')>-1){\n");
            sb.append("            if(url.indexOf('currentPage')>-1){\n");
            sb.append("                var reg = /currentPage=\\d*/g;\n");
            sb.append("                url = url.replace(reg,'currentPage=');\n");
            sb.append("            }else{\n");
            sb.append("                url += \"1&"+(entityOrField?"currentPage":"page.currentPage")+"=\";\n");
            sb.append("            }\n");
            sb.append("        }else{url += \"?"+(entityOrField?"currentPage":"page.currentPage")+"=\";}\n");
            sb.append("        url = url + \"&" +(entityOrField?"showCount":"page.showCount")+"=\"+value;\n");
            sb.append("        document.location = url;\n");
            sb.append("    }\n");
            sb.append("}\n");
            
            //跳转函数 
            sb.append("function toTZ(){");
            sb.append("var toPaggeVlue = document.getElementById(\"toGoPage\").value;");
            sb.append("if(toPaggeVlue == ''){document.getElementById(\"toGoPage\").value=1;return;}");
            sb.append("if(isNaN(Number(toPaggeVlue))){document.getElementById(\"toGoPage\").value=1;return;}");
            sb.append("nextPage(toPaggeVlue);");
            sb.append("}\n");
            sb.append("</script>\n");
        }
        pageStr = sb.toString();
        return pageStr;
    }
    
    public void setPageStr(String pageStr) {
        this.pageStr = pageStr;
    }
    
    public int getShowCount() {
        return showCount;
    }
    
    public void setShowCount(int showCount) {
        
        this.showCount = showCount;
    }
    
    public int getCurrentResult() {
        currentResult = (getCurrentPage()-1)*getShowCount();
        if(currentResult<0)
            currentResult = 0;
        return currentResult;
    }
    
    public void setCurrentResult(int currentResult) {
        this.currentResult = currentResult;
    }
    
    public boolean isEntityOrField() {
        return entityOrField;
    }
    
    public void setEntityOrField(boolean entityOrField) {
        this.entityOrField = entityOrField;
    }
    
    public PageData getPd() {
        return pd;
    }

    public void setPd(PageData pd) {
        this.pd = pd;
    }
    
}
 

© 著作权归作者所有

上一篇: 读excel文档
下一篇: url 签名排序生成
贝克街的亡灵sf
粉丝 2
博文 42
码字总数 21597
作品 0
松江
程序员
私信 提问

暂无文章

树莓派Zero的初始化

概述 树莓派0拿到手之后,真是爱不释手,如此小巧,配置不逊于一些低端的VPS,又具备IO口/wifi/蓝牙,还可选配摄像头.实乃居家必备之神器. 但是体积如此之小巧,用起来还是有一些问题的.比如usb口过...

一曲忠臣的战歌
40分钟前
2
0
ViewPager懒加载极致优化

目录介绍 01.ViewPager简单介绍 02.ViewPager弊端分析 03.ViewPager预加载 04.ViewPager部分源码 05.懒加载出现问题 06.如何实现预加载机制 07.懒加载配合状态管理器 吕诗禹想换个工作,渴望...

杨充
57分钟前
1
0
shadeEffect动态消失渲染

import QtQuick 2.0ShaderEffect { id:genieEffect anchors.centerIn: parent property variant source mesh:GridMesh{resolution: Qt.size(10,10)} propert......

蓝栩液枫
今天
3
0
苦逼程序员的真实生活 

程序员这个行业虽然待遇还不错,但是不仅累,拿命去换取的,很多时候也是很苦逼的,有多少程序员还在苦苦追求心里的那个她。我就是千万程序员大军中的一员,其中有多苦逼我最清楚,以下的12张...

linux服务器架构
今天
6
0
idea 创建maven 分支apply-patch中模块

1.点击idea 有上角的 project structure 2.选择modules-->点击“+”-->new module--->maven-->添加group id=com.paic.gamma.apply ,artifactid-分支名(qilu-bank),version=1.0-SNAPSHOT ......

qimh
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部